| Алгоритм работы следующий, передаем скрипту псевдоним ссылки, по нему скрипт из таблицы находит соответствующую ссылку, увеличивает показатель счетчика на 1 и перенаправляет пользователя по запорошенной ссылке, всё просто 1. Создаем базу, например links, а в ней таблицу например link. (все описанные действия я произвел в phpmyadmin).
id | int | name | text | link | text | count | int |
2. Создаем файл который будет увеличивать показания счетчика и производить редирект. go.php
PHP код: <?php
$name_link = $_GET["link"]; //получаем имя переменной
$q = mysql_connect("server","user", "password"); //соединяемся с сервером MySQL
mysql_select_db("db_name"); // выбираем базу данных
$query = "SELECT * FROM tb_name WHERE name ='$name_link'";
$result = mysql_query($query); // делаем запрос
$f = mysql_fetch_array($result);
$count=$f[count]+1; // увеличиваем показания счетчика +1
$query = "UPDATE tb_name SET count='$count' WHERE name= '$name_link'";
$result = mysql_query ($query); //записываем новые показания в таблицу
header ("Location: http://$f[link]"); //собственно сам редирект
?>
3. Создаем скрипт добавления данных в таблицу. add_link.html, выводит форму в которой мы заполняем 2 поля, ссылка и псевдоним. А второй, add_link.php, собственно и будет производить запись в таблицу. add_link.html
PHP код: <html><body>
<form method="post" action="add_link.php">
Введите псевдоним ссылки: <input type=text name="name"><br>
Введите адрес: <input type=text name="link"><br>
<input type=submit value="GO!">
</form>
</body>
</html>
add_link.php
PHP код: <?php
$name=$_POST['name'];
$link=$_POST['link'];
/* Соединяемся, выбираем базу данных */
$q = mysql_connect("server","user", "password")
or die("Could not connect : " . mysql_error());
mysql_select_db("db_name") or die("Could not select database");
/*Вставляем данные в таблицу*/
$query = "INSERT INTO tb_name (name, link) VALUES ('$name','$link')";
$result = mysql_query ($query) or die("Query failed : " . mysql_error());
echo "ссылка успешно добавлена";
echo "<br><a href=\"index.html\">Главная</a>";
echo "<br><a href=\"add_link.html\">добавить еще</a>";
?>
4. Завершением действий будет создание скрипта который будет смотреть статистику. statistika.php
PHP код: <?php
$q = mysql_connect("server","user", "password")
or die("Could not connect : " . mysql_error());
mysql_select_db("db_name") or die("Could not select database"); //Соединяемся, выбираем базу данных
$query = "SELECT * FROM tb_name";
$result = mysql_query($query) or die("Query failed : " . mysql_error()); //Выполняем SQL-запрос
echo "<table border=\"1\" width=\"100%\" bgcolor=\"#FFFFE1\">"; //Выводим результаты в html
echo "<tr><td>id</td><td>Имя</td><td>cсылка</td>";
echo "<td>Счетчик</td></tr>";
for ($c=0; $c<mysql_num_rows($result); $c++)
{
echo "<tr>";
$f = mysql_fetch_array($result);
echo "<td>$f[id]</td><td>$f[name]</td><td>$f[link]</td>";
echo "<td>$f[count]</td>";
echo "</tr>";
}
echo "</table>";
echo "<a href=\"index.html\">На главную</a>";
?>
server, user, password, db_name, tb_name - заменить на свои server - чаще localhost user - пользователь базы, password - пароль от базы для user'a db_name -имя базы данных tb_name - имя таблицы В результате на экране монитора будет таблица в строках которой будет псевдоним, ссылка и показания счетчика. не забудьте про кодировку, иначе русские слова не будут отображаться, должна быть utf-8 без boom создаём папку и копируем туда add_link.php add_link.html и statistika.php, файл go.php кладём в корень сайта Для удобства можно создать страницу на которой разместить ссылки на add_link.html и statistika.php и поместить её в корень сайта И последнее, что бы это все работало заполняем таблицу псевдонимами и ссылками через файл add_link.html (ссылки писать без http) Все, теперь вместо ссылки которую мы хотим посчитать, пишем www.mysite.ru/go.php?link=psevdonim. |