Как запретить update sql вносить каждый раз для всех данные?

программирование базы данных sql

Привет мир! Пишу скрипт просмотров страницы. И столкнулся с такой вот проблемой. Когда меняешь GET параметры то все записи получают одинаковые значения.

К примеру в таблице есть 3 записи, one, two и three. У всех обнуленные значения. Обновив 5 раз страницу (?video=one) получаю цифру 5. Затем перехожу в другое GET значение (?video=two). И счетчик получает цифру 6. Перехожу на ?video=three и получаю цифру 7.

Как этой лажи избежать?

Вот код:

---

$g_get = $_GET['video'];
$g_sql = mysql_query("SELECT `all_views` FROM `gvcms_views` WHERE `name_views` = '$g_get'");
$g_row = mysql_fetch_assoc($g_sql);

$g_views = 1;
$g_act = $g_row['all_views'];
$g_res = $g_views + $g_act;
echo $g_res;

$g_usql = mysql_query("UPDATE `gvcms_views` SET `all_views` = '$g_res' WHERE `all_views` = '$g_act'");

---

Вот таблица:

---

id_views | int(100) | primary key | AUTO_INCREMENT
name_views | varchar(32)
all_views | int(100) | 0 по умолчанию

---

Примечание:
NotSoMatter, данные не обновляются

Примечание:
Может быть нужно написать какое-то условие? Помогите народ!

Примечание:
CKB, спасибо
Ответы:
А не проще ли сразу UPDATE `gvcms_views` SET `all_views` = `all_views`+1 WHERE `name_views` = '$g_get ?
В вашем случае запрос


11 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.