Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Đây có phải là một phương pháp an toàn để chèn dữ liệu biểu mẫu vào cơ sở dữ liệu MySQL không?

Ví dụ bạn cung cấp sẽ chèn các vars bài đăng vào cơ sở dữ liệu mà không cần phân tích chúng trước để tìm đầu vào của người dùng xấu. Sử dụng chức năng truyền kiểu, thoát / lọc, câu lệnh đã chuẩn bị, v.v. trước khi sử dụng chúng để tương tác với DB của bạn.

Một nguyên tắc chung cần tuân theo là không bao giờ tin tưởng vào thông tin đầu vào của người dùng. BAO GIỜ!

Kiểm tra: Cách tốt nhất để dừng SQL Injection bằng PHP

Để trả lời câu hỏi của bạn, đây là cách bạn xử lý toàn bộ biểu mẫu bằng cách sử dụng các câu lệnh do PDO chuẩn bị.

$stmt = $db->prepare('INSERT INTO Persons (FirstName, LastName, Age) VALUES (:first_name, :last_name, :age)');

$stmt->execute(array(':first_name' => $first_name,':last_name' => $last_name, ':age' => $age));

Nếu bạn chỉ muốn chèn một cột vào bản ghi như bạn đã yêu cầu, thì cú pháp sẽ là:

$stmt = $db->prepare('INSERT INTO Persons (FirstName) VALUES (:first_name)');

$stmt->execute(':first_name', $first_name);


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cảnh báo:mysql_result () [function.mysql-result]:Không thể chuyển đến hàng 0 trên MySQL kết quả chỉ mục 5 trong profile.php trên dòng 11

  2. Làm cách nào để chọn các hàng có giá trị cột KHÔNG ĐẦY bằng cách sử dụng CodeIgniter's ActiveRecord?

  3. LỆNH CỦA MySQL THEO [giá trị trường SET tùy chỉnh]

  4. cách tạo lược đồ mysql trong nodejs

  5. Không thể kết nối với MySQL Workbench trên mac. Không thể kết nối với máy chủ MySQL trên '127.0.0.1' (61) Mac Macintosh