Как обновить строку MySQL в PHP?

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

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

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

 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); 

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

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

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

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

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