$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 . "'");