1 回答

TA貢獻1828條經驗 獲得超3個贊
我不應該回答這個問題,但我想幫助你。首先,如果您尚未啟用錯誤報告,則必須啟用。閱讀如何在 MySQLi 中獲取錯誤消息?. 我還建議切換到 PDO 而不是 mysqli,因為它更好更簡單。
你的 PHP 和 SQL 有問題。
您似乎沒有在任何地方連接到數據庫。
您的代碼沒有使用準備好的語句,這使得它容易受到 SQL 注入的影響。
你可以
exit
從你的代碼中刪除,它不會做任何事情的語法
LIKE
是LIKE '%string%'
,沒有=
一個很好的 mysqli 代碼示例應該如下所示。
<?php
// report all errors. Check the error log or enable display errors in PHP config
error_reporting(E_ALL);
// Always enable mysqli error reporting
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$db_conx = new mysqli('localhost', 'username', 'password', 'databaseName');
$db_conx->set_charset('utf8mb4'); // always set the charset
if (isset($_POST['str'])) {
$strid = '%'. $_POST['str'] .'%';
// prepare -> bind -> execute
$stmt = $db_conx->prepare("UPDATE notifications SET did_read=1 WHERE note LIKE ?");
$stmt->bind_param('s', $strid);
$stmt->execute();
echo 'did_read_ok';
}
- 1 回答
- 0 關注
- 145 瀏覽
添加回答
舉報