Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Mengemas kini Data dengan Selamat dalam MySQL menggunakan Penyata Disediakan?

Bagaimana untuk Mengemas kini Data dengan Selamat dalam MySQL menggunakan Penyata Disediakan?

DDD
DDDasal
2024-10-31 09:10:29295semak imbas

How to Update Data Securely in MySQL using Prepared Statements?

Menggunakan Penyata Disediakan untuk Pertanyaan Kemas Kini

Apabila melaksanakan pertanyaan kemas kini dengan PHP dan MySQL, adalah disyorkan untuk menggunakan pernyataan yang disediakan untuk memastikan integriti data dan menghalang suntikan SQL. Dalam perbincangan baru-baru ini mengenai kenyataan UPDATE MySQL, pengguna mendapatkan panduan tentang cara menggunakan pernyataan yang disediakan.

Penyelesaian

Dalam MySQL, pernyataan yang disediakan mengikut format yang serupa dengan INSERT atau SELECT kenyataan. Untuk menggunakan pernyataan yang disediakan untuk pertanyaan KEMASKINI, cuma gantikan semua nilai pembolehubah dengan ruang letak yang diwakili oleh tanda soal (?):

<code class="php">$sql = "UPDATE Applicant SET phone_number=?, street_name=?, city=?, county=?, zip_code=?, day_date=?, month_date=?, year_date=? WHERE account_id=?";</code>

Setelah pernyataan SQL disediakan, cipta objek pernyataan yang disediakan:

<code class="php">$stmt = $db_usag->prepare($sql);</code>

Seterusnya, ikat parameter pada pernyataan yang disediakan. Contoh berikut menganggap bahawa parameter tarikh dan account_id ialah integer (d), manakala parameter selebihnya ialah rentetan (s):

<code class="php">$stmt->bind_param('sssssdddd', $phone_number, $street_name, $city, $county, $zip_code, $day_date, $month_date, $year_date, $account_id);</code>

Laksanakan pernyataan yang disediakan:

<code class="php">$stmt->execute();</code>

Kendalikan sebarang ralat jika berlaku:

<code class="php">if ($stmt->error) {
  echo "FAILURE!!! " . $stmt->error;
}
else echo "Updated {$stmt->affected_rows} rows";</code>

Akhir sekali, tutup kenyataan yang disediakan:

<code class="php">$stmt->close();</code>

Atas ialah kandungan terperinci Bagaimana untuk Mengemas kini Data dengan Selamat dalam MySQL menggunakan Penyata Disediakan?. 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