Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Memasukkan Data Borang ke dalam MySQL Menggunakan Penyata Disediakan dalam PHP?

Bagaimana untuk Memasukkan Data Borang ke dalam MySQL Menggunakan Penyata Disediakan dalam PHP?

Patricia Arquette
Patricia Arquetteasal
2024-11-10 11:19:02714semak imbas

How to Insert Form Data into MySQL Using Prepared Statements in PHP?

PHP: Memasukkan Nilai daripada Borang ke dalam MySQL

Masalah

Anda telah mencipta jadual pangkalan data dan cuba memasukkan nilai daripada HTML bentuk ke dalamnya, tetapi pangkalan data kekal kosong. Kod tersebut mengisytiharkan pertanyaan SQL sebagai pembolehubah rentetan tetapi tidak melaksanakannya, meninggalkan pangkalan data tidak terjejas.

Jawapan

Untuk memasukkan nilai menggunakan borang, ikut langkah berikut:

  1. Jangan Percaya Input Pengguna: Input daripada borang boleh dimanipulasi, yang berpotensi menyebabkan SQL Kerentanan suntikan.
  2. Gunakan Penyata Disediakan: Ia membenarkan anda untuk menentukan ruang letak untuk nilai dalam pernyataan SQL, yang kemudiannya terikat kepada pembolehubah secara dinamik, menghalang input berniat jahat.
  3. Ubah suai PHP Anda Kod:
<?php

// Database configuration
include_once 'dbConfig.php';

if (isset($_POST['save'])) {
    // Prepare the statement
    $sql = "INSERT INTO users (username, password, email) VALUES (?,?,?)";
    $stmt = $mysqli->prepare($sql);

    // Bind the parameters to the statement
    $stmt->bind_param("sss", $_POST['username'], $_POST['email'], $_POST['password']);

    // Execute the statement
    $stmt->execute();

    // Close the statement
    $stmt->close();
}

?>

Nota Penyata Disediakan

  • Pemegang tempat (?) digunakan untuk pengikatan pembolehubah.
  • Gunakan bind_param untuk mengikat pembolehubah jenis (cth., sss untuk tiga rentetan).
  • laksanakan akhirnya memasukkan nilai ke dalam pangkalan data.

Keselamatan Kata Laluan

Perhatikan bahawa kata laluan tidak boleh disimpan dalam teks yang jelas. Sebaliknya, gunakan password_hash untuk menyimpan cincangan selamat bagi kata laluan.

Atas ialah kandungan terperinci Bagaimana untuk Memasukkan Data Borang ke dalam MySQL Menggunakan Penyata Disediakan dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn