如何使用MySQL 擴充功能編寫安全的資料庫查詢
MySQL 擴充為PHP 中的資料庫互動提供了一種基本但實用的方法。雖然不是最受提倡的選項,但正確使用它可以減輕潛在的安全性和可用性陷阱。
安全查詢的基本注意事項
為了防範常見漏洞,至關重要遵守最佳實踐:
安全性MySQL 的範例程式碼互動
讓我們示範一個對'tablename' 表執行UPDATE 查詢的安全性PHP 腳本:
header('Content-type: text/html; charset=utf-8'); error_reporting(E_ALL | E_STRICT); ini_set('display_errors', 1); $config = array( 'host' => '127.0.0.1', 'user' => 'my_user', 'pass' => 'my_pass', 'db' => 'my_database' ); $connection = @mysql_connect($config['host'], $config['user'], $config['pass']); if (!$connection) { trigger_error('Unable to connect to database: ' . mysql_error(), E_USER_ERROR); } if (!mysql_select_db($config['db'])) { trigger_error('Unable to select db: ' . mysql_error(), E_USER_ERROR); } if (!mysql_set_charset('utf8')) { trigger_error('Unable to set charset for db connection: ' . mysql_error(), E_USER_ERROR); } $result = mysql_query('UPDATE tablename SET name = "' . mysql_real_escape_string($_POST['name']) . '" WHERE id = "' . mysql_real_escape_string($_POST['id']) . '"'); if ($result) { echo htmlentities($_POST['name'], ENT_COMPAT, 'utf-8') . ' updated.'; } else { trigger_error('Unable to update db: ' . mysql_error(), E_USER_ERROR); }
說明
此程式碼範例示範如何使用 MySQL 擴充功能執行安全性更新查詢。它可以為尋求在自己的資料庫互動中實施最佳實踐的開發人員提供參考。
以上是如何在PHP中安全地使用MySQL擴充來防止SQL注入?的詳細內容。更多資訊請關注PHP中文網其他相關文章!