У меня есть следующий запрос в моем файле PHP:Почему мой запрос не обновляется?
if ($user) { //user is logged in (which he is)
$highscore = mysql_query("SELECT highscore FROM highscore WHERE fbID = $user"); //wil give 200
$fb_country_str = nl;
if (mysql_num_rows($highscore) == 0) { //if no result from highscore set it to 1
$highscore = 1;
} else { //if we do get a result, select the country (in this case it is: uk)
$country = mysql_query("SELECT country FROM highscore WHERE fbID = $user");
if (!($country == $fb_country_str)) { //if the country is NOT the same, update the country with $fb_country_str (which in this case it should update)
$sql = mysql_query("UPDATE highscore SET country = $fb_country_str WHERE fbID = $user");
}
}
}
Теперь, при запуске, он не обновляет базу данных, где страна Великобритания должна быть изменена на нл. Почему нет? Что мне не хватает?
Сердечные приветы
Поместите переменные в ' '': '$ SQL = mysql_query ("UPDATE Highscore SET страны = '$ fb_country_str' WHERE fbID = '$ пользователя'");' Это предотвратит ошибки запроса, когда страна содержит более одного слова. – MarcinJuraszek
И еще более важно - вы должны подумать об использовании PDO http://php.net/manual/en/book.pdo.php – MarcinJuraszek
Пожалуйста, прекратите писать новый код с помощью древних 'mysql_ *' функций. Они больше не поддерживаются, и сообщество начало процесс [устаревания] (http://goo.gl/KJveJ). Вместо этого вы должны узнать о [подготовленных утверждениях] (http://goo.gl/vn8zQ) и использовать либо [PDO] (http://php.net/pdo), либо [MySQLi] (http://php.net/ MySQLi). Если вы не можете решить, статья [this] (http://goo.gl/3gqF9) поможет выбрать. Если вы хотите учиться, [здесь] (http://goo.gl/vFWnC) является хорошим учебным пособием, связанным с PDO. – Esailija