Rumah > Artikel > pangkalan data > Mengapa Nilai Borang Saya Tidak Dimasukkan ke dalam Pangkalan Data MySQL Saya?
Masalah:
Memasukkan nilai daripada borang HTML ke dalam pangkalan data MySQL ialah tidak berjaya dilaksanakan dan pangkalan data kekal kosong.
Penyelesaian:
Kod PHP yang disediakan mengandungi pertanyaan SQL yang disimpan sebagai pembolehubah rentetan:
$sql = "INSERT INTO users (username, password, email) VALUES ('".$_POST["username"]."','".$_POST["password"]."','".$_POST["email"]."')";
Walau bagaimanapun, pertanyaan ini tidak dilaksanakan. Untuk melaksanakan pertanyaan, anda perlu menggunakan fungsi MySQL seperti pernyataan yang disediakan untuk memastikan keselamatan dan integriti data anda.
Amalan Terbaik: Menggunakan Penyata yang Disediakan
Penyata yang disediakan melindungi daripada suntikan SQL dengan memisahkan pertanyaan daripada input pengguna. Begini cara untuk menggunakannya:
Sediakan pernyataan SQL:
$sql = "INSERT INTO users (username, password, email) VALUES (?,?,?)";
Ikat pembolehubah input :
$stmt = $mysqli->prepare($sql); $stmt->bind_param("sss", $_POST['username'], $_POST['email'], $_POST['password']);
Laksanakan pernyataan yang disediakan:
$stmt->execute();
Keselamatan Tambahan Langkah:
Untuk meningkatkan keselamatan, simpan kata laluan dalam format cincang yang disulitkan dan bukannya teks biasa menggunakan password_hash.
Atas ialah kandungan terperinci Mengapa Nilai Borang Saya Tidak Dimasukkan ke dalam Pangkalan Data MySQL Saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!