smolyakov770
@smolyakov770
Веб Дизайнер Верстальщик

Почему при обновление страницы повторяется запись в базу данных?

Вот кусок кода. При обновление страницы происходит повторная запись как исправить?
$id = $_COOKIE['user_id'];

$query = mysql_query("SELECT `username`, `cash`` FROM `users` WHERE `part` = $id ORDER BY `user_id` DESC");

while ($row = mysql_fetch_assoc($query)) {
	if ($row["username"]) {
		$bonus = ($row["cash"] * 7) / 100;
} else
		$bonus = 0;

if ($id) {
	mysql_query("UPDATE `user` SET `bal` = `bal` + $bonus WHERE `part` = $id");
}

	echo '<br>';

}
  • Вопрос задан
  • 482 просмотра
Пригласить эксперта
Ответы на вопрос 3
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
$id = $_COOKIE['user_id'];
...
if ($id) {
  mysql_query("UPDATE `user` SET `bal` = `bal` + $bonus WHERE `part` = $id");
}

ничего не кажется странным? )
Ответ написан
initrd0
@initrd0
Это я =)
У Вас проверка идет по Cookie, которая нигде не обнуляется:
$id = $_COOKIE['user_id'];
if ($id) {
//код
}


Добавьте например
unset($_COOKIE['user_id']);//удалится Cookie
Ответ написан
@BorisKorobkov Куратор тега PHP
Web developer
Говнокод.
1. Любой любому может накрутить баланс
2. Догадайтесь, что будет, если я себе в куку запишу user_id со значением 0; DROP DATABASE ...; -- и зайду на ваш сайт?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы