Этот код содержит ошибки.
Сообщение об ошибке: ошибка синтаксиса: ошибка синтаксиса, неожиданный T_ENCAPSED_AND_WHITESPACE, ожидающий T_STRING или T_VARIABLE или T_NUM_STRING в /home/soulz/public_html/inbox.php в строке 19
Вот код:
mysql_query("UPDATE `messages` SET message_title = '[NO SUBJECT]' WHERE `message_id`=$row['message_id']");
Используйте фигурные скобки:
mysql_query("UPDATE `messages` SET message_title = '[NO SUBJECT]' WHERE `message_id`={$row['message_id']}");
Не ставьте апострофы вокруг имени поля:
mysql_query("UPDATE `messages` SET message_title = '[NO SUBJECT]' WHERE `message_id`=$row[message_id]"); ^^^^^^^^^^
Внутри цитируемых строк вы не можете использовать дополнительные кавычки для имен полей массива. Есть альтернативный, более сложный синтаксис, включающий фигурные скобки, если у вас очень сложное выражение массива, но здесь вам это не нужно.
Кажется, message_id является integer
, поэтому вы можете исправить эту ошибку с лучшей практикой.
mysql_query("UPDATE `messages` SET message_title = '[NO SUBJECT]' WHERE `message_id`=" . intval($row['message_id']));
Вы можете использовать strval()
для строк. Обе функции подробно описаны в справочной странице intval () и странице strval () .