Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah Saya Boleh Memasukkan Pembolehubah PHP dengan Selamat dalam Penyata INSERT MySQL?

Bagaimanakah Saya Boleh Memasukkan Pembolehubah PHP dengan Selamat dalam Penyata INSERT MySQL?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-30 14:38:14413semak imbas

How Can I Safely Include PHP Variables in MySQL INSERT Statements?

Sertakan Pembolehubah PHP dalam Penyata MySQL

Memasukkan nilai ke dalam jadual kandungan dengan pembolehubah PHP sebagai sebahagian daripada klausa VALUES boleh menjadi masalah. Mari kita atasi isu ini dan berikan pendekatan yang betul.

Menggunakan Penyata Disediakan

Memastikan pengendalian pembolehubah PHP yang betul dalam pernyataan MySQL adalah penting. Peraturan utama adalah menggunakan pernyataan yang disediakan. Gantikan pembolehubah PHP dengan ruang letak dalam pernyataan SQL anda dan ikuti langkah berikut:

  1. Sediakan pertanyaan yang dikemas kini
  2. Ikat pembolehubah padanya pemegang tempat yang sepadan
  3. Laksanakan yang disediakan pernyataan

Melaksanakan Kenyataan yang Disediakan

Menggunakan MySQLi:

<?php
$type = 'testing';
$reporter = "John";
$description = "whatever";

$sql = "INSERT INTO contents (type, reporter, description) VALUES ('$type', ?, ?)";
$mysqli->execute_query($sql, [$reporter, $description]);
?>

Menggunakan PDO:

<?php
$type = 'testing';
$reporter = "John";
$description = "whatever";

$sql = "INSERT INTO contents (type, reporter, description) VALUES ('$type', ?, ?)";
$stmt = $pdo->prepare($sql);
$stmt->execute([$reporter, $description]);
?>

Penapisan Senarai Putih untuk Pengecam

Untuk bahagian pertanyaan seperti kata kunci atau pengecam (pangkalan data, jadual atau nama medan), gunakan penapisan senarai putih. Ini melibatkan perbandingan secara eksplisit pembolehubah PHP kepada senarai nilai yang dibenarkan yang telah ditetapkan. Jika pembolehubah sepadan dengan nilai yang dibenarkan, ia adalah selamat untuk dimasukkan dalam pertanyaan. Jika tidak, buang pengecualian untuk input tidak sah.

Kesimpulan

Mematuhi garis panduan ini memastikan pengendalian pembolehubah PHP yang selamat dan cekap dalam pernyataan MySQL. Menggunakan pernyataan yang disediakan untuk pembolehubah yang mewakili literal data dan penapisan senarai putih untuk pengecam menjamin integriti data dan perlindungan terhadap serangan suntikan.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memasukkan Pembolehubah PHP dengan Selamat dalam Penyata INSERT MySQL?. 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