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

DDD
Lepaskan: 2024-10-31 09:10:29
asal
214 orang telah melayarinya

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>
Salin selepas log masuk

Setelah pernyataan SQL disediakan, cipta objek pernyataan yang disediakan:

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

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>
Salin selepas log masuk

Laksanakan pernyataan yang disediakan:

<code class="php">$stmt->execute();</code>
Salin selepas log masuk

Kendalikan sebarang ralat jika berlaku:

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

Akhir sekali, tutup kenyataan yang disediakan:

<code class="php">$stmt->close();</code>
Salin selepas log masuk

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!

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!