PHP программирвоание: сохраняя значение в таблицу mysql проверять ее существование

интернет программирование php MySQL базы данных

Хочеться написать этот вопрос на stackoverflow, но думаю там только как забанят за легкий вопрос как это было в прошлый раз.

Есть значение переменной которое парсируеться каждый раз при обновлении страницы.
Это значение сохраняеться в таблицу mysql phpmyadmin.
При обновлении страницы значение добавляеться снова. То есть при двух обновлениях значение удваиваеться в таблице.
Нужно написать так чтобы он проверял значение в таблице и если оно уже там есть то не добавлять.

Вот код который я сумел написать, но он не работает:

$connection=mysqli_connect("127.0.0.1","база данных", "пароль","пользователь");
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$result = mysqli_query($connection,"SELECT * FROM таблица");

while($row = mysqli_fetch_array($result))
{
if ($row[' column '] == $переменная с значением для сохранения) {
echo "Values are same";
}
else {
mysqli_query($connection,"INSERT INTO таблицы (значение1,значение2,значение3) VALUES ('$переменная с значением для сохранения1','$переменная с значением для сохранения2','$переменная с значением для сохранения3')");

}
}

mysqli_close($con123);
Ответы:
просто поставьте уникальный индекс на поле
"сохраняеться"
"удваиваеться"
Уникальный индекс или Primary Key на поле, по которому идентифицируется запись.
Далее запрос на вставку может выглядеть так (обновит запись, если она существует, или вставит новую):
INSERT INTO ... ON DUPLICATE KEY UPDATE field1 = value1, field2 = value2
Либо так (ничего не будет делать, если запись существует):
INSERT IGNORE INTO ...
Возможны вариации на тему с использованием REPLACE вместо INSERT.
Просто сохраняйте в mysql таблицу ip адрес пользователя ($_SERVER['REMOTE_ADDR']). И как пользователь снова зашел проверяйте если этот ip в базе. Будут вопросы пишите)


11 лет назад

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

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

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