首頁  >  文章  >  資料庫  >  為什麼我的表單值沒有插入到我的 MySQL 資料庫?

為什麼我的表單值沒有插入到我的 MySQL 資料庫?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-11-11 18:32:02454瀏覽

Why are my form values not being inserted into my MySQL database?

PHP:將表單中的值插入 MySQL

將表單中的值插入 MySQL 資料庫是 Web 開發的常見任務。在 PHP 中,您可以使用 mysqli 擴充功能連接到資料庫並執行查詢。

但是,如果您遇到值未插入資料庫的問題,請務必考慮以下事項:

已聲明但未執行的查詢:

$sql = "INSERT INTO users (username, password, email)
VALUES ('".$_POST["username"]."','".$_POST["password"]."','".$_POST["email"]."')";

此程式碼僅宣告一個包含MySQL 查詢的字串變數。要執行查詢,您需要使用 mysqli_query 等函數或使用 mysqli_prepare、mysqli_bind_param 和 mysqli_execute 準備語句。

SQL 注入漏洞:

從不附加使用者輸入直接到您的查詢。它可能導致 SQL 注入攻擊,使用者可以操縱輸入來對資料庫造成損壞。相反,請使用準備好的語句來防範此漏洞。

準備好的語句範例:

$sql = "INSERT INTO users (username, password, email)
VALUES (?,?,?)";

$stmt = $mysqli->prepare($sql);
$stmt->bind_param("sss", $_POST['username'], $_POST['email'], $_POST['password']);
$stmt->execute();

安全注意事項:

  • 不要以明文形式儲存密碼。使用password_hash來儲存密碼的雜湊。

請記住,應始終謹慎對待使用者輸入,並應實施準備好的語句等安全措施來防止漏洞。

以上是為什麼我的表單值沒有插入到我的 MySQL 資料庫?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn