Как мне обновить строку MySQL в PHP? - PullRequest
1 голос
/ 22 марта 2009

У меня есть база данных MySQL, с которой я работаю, но когда я пытаюсь обновить в ней строку, она не работает. Вот код обновления, с которым я работаю:

mysql_query("UPDATE offtopic SET next = '$insert' WHERE id = '$id'");

Ответы [ 3 ]

5 голосов
/ 22 марта 2009

Прежде всего, вы должны сделать его немного более безопасным:

mysql_query(sprintf("UPDATE offtopic SET next = '%s' WHERE id = '%s'",
            mysql_real_escape_string($insert),
            mysql_real_escape_string($id));

Теперь, ваша id строка, а не цифра? Если он числовой, вы должны иметь:

mysql_query(sprintf("UPDATE offtopic SET next = '%s' WHERE id = %d",
            mysql_real_escape_string($insert), $id);
5 голосов
/ 22 марта 2009

Ваш синтаксис правильный, поэтому это может быть ошибка с переменными или именами ваших полей.

Попробуйте это:

$sql = "UPDATE offtopic SET next = '$insert' WHERE id = '$id'";
if (!mysql_query($sql)) {
    echo "MySQL Error: " . mysql_error() . "<br />" . $sql;
}

Это может показать вам некоторую полезную информацию, которая поможет вам в отладке.

1 голос
/ 15 октября 2009

Пожалуйста, ради любви к Интернету, не создавайте SQL-запрос самостоятельно. Используйте PDO .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...