[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Уникальные посещения страницы
sarik1986
дравствуйте ребята. Столкнулся с такой проблемой. Есть мультивользовательский интернет- магазин со сножественными продавцами. Продацы начали жаловаться что нигде не могут видеть посещения своих товаров чтоб знали на какой товар больше интереса у покупателей. Подумал как сделать.Мне нужно было сделать такую вещь. Не хочу сохранять все IP пользователей кто заходит на страницу товара. Так как со временем эта таблица станет безразмерной. Да и еще мне нужно например сегодня зашел человек посчитал +1 завтра тот же человек с того же IP зайдет опять должен +1 просмотр. Вот написал так.

$ip = $_SERVER['REMOTE_ADDR'];

$viewer_check_query = "SELECT * FROM counter WHERE ip = '$ip' AND page = '$productid'";
$viewer_check_result = mysql_query($viewer_check_query);
$viewer_check_numrows = mysql_num_rows($viewer_check_result);

if($viewer_check_numrows == 0){
$viewer_new_query = "INSERT INTO counter (ip, page) VALUES
('
$ip', '$productid')";
$viewer_new_result = mysql_query($viewer_new_query);

$upcount = mysqli_query($mysqli, "UPDATE counter
SET counter = counter + 1
WHERE page= '"
. $productid . "'");
}


$viewer_total_query = "SELECT * FROM counter WHERE page = '$productid'";
$viewer_total_result = mysql_query($viewer_total_query);
$viewer_total_numrows = mysql_num_rows($viewer_total_result);
Это работает отлично но только сегодня. Потому что мне надо будет стирать все данные сегодня вечером чтоб завтра все пошло по новому. Да и еще оставить данные не могу так как таблица в скором времени станет безразмерной из за постоянных посещений. Потом подумал добавить вот это


$upcount = mysqli_query("UPDATE productst
SET views = "
.$viewer_total_numrows."
WHERE page= '"
. $productid . "'");


Почему меня не устраивает этот вариант?

1. Еще один запрос к базе прибавился что есть нехорошо. + к этому если я добавлю этот запрос мне придется еще один запрос добавить ставить какое то значение в таблице counter чтоб второй раз когда посещения буду перекидывать в таблицу products не было каши

Если сделаю так то все будет ок но запросов получается много. Есть ли у кого нибудь идеи какие то насчет этого.может готовое решение простое для посещения страниц.



$upcount = mysqli_query("UPDATE productst
SET views = "
.$viewer_total_numrows."
WHERE page= '"
. $productid . " and notsend != '" . $productid . "'");

Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.