Hướng dẫn multiple select mysql php - nhiều lựa chọn mysql php
MySQL tùy chọn cho phép có nhiều câu lệnh trong một chuỗi câu lệnh, nhưng nó yêu cầu xử lý đặc biệt. Nhiều câu lệnh hoặc nhiều truy vấn phải được thực thi với mysqli :: multi_query (). Các câu lệnh riêng lẻ của chuỗi câu lệnh được phân tách bằng dấu chấm phẩy. Sau đó, tất cả các bộ kết quả được trả về bởi các câu lệnh được thực thi phải được tìm nạp.mysqli::multi_query(). The individual statements of the statement string are separated by semicolon. Then, all result sets returned by the executed statements must be fetched. Máy chủ MySQL cho phép có các câu lệnh trả về các bộ kết quả và câu lệnh không trả về tập kết quả trong một câu lệnh. Ví dụ #1 Câu lệnh
(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT); Ví dụ trên sẽ xuất ra: array(1) { [0]=> array(1) { ["_num"]=> string(1) "0" } } array(1) { [0]=> array(1) { ["_num"]=> string(1) "1" } } Cân nhắc về Bảo mật API chức năng mysqli :: query () và mysqli :: real_query () không đặt cờ kết nối cần thiết để kích hoạt các truy vấn đa trong máy chủ. Một cuộc gọi API bổ sung được sử dụng cho nhiều tuyên bố để giảm thiệt hại của các cuộc tấn công tiêm SQL tình cờ. Kẻ tấn công có thể cố gắng thêm các câu lệnh như Ví dụ #2 SQL tiêm
Ví dụ trên sẽ xuất ra: Error executing query: (1064) You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DROP TABLE mysql.user' at line 1 Cân nhắc về Bảo mật API chức năng mysqli :: query () và mysqli :: real_query () không đặt cờ kết nối cần thiết để kích hoạt các truy vấn đa trong máy chủ. Một cuộc gọi API bổ sung được sử dụng cho nhiều tuyên bố để giảm thiệt hại của các cuộc tấn công tiêm SQL tình cờ. Kẻ tấn công có thể cố gắng thêm các câu lệnh như Ví dụ #2 SQL tiêm
Tuyên bố chuẩn bị ¶ Việc sử dụng nhiều câu lệnh với các câu lệnh được chuẩn bị không được hỗ trợ.
Error executing query: (1064) You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DROP TABLE mysql.user' at line 10 Error executing query: (1064) You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DROP TABLE mysql.user' at line 11 Error executing query: (1064) You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DROP TABLE mysql.user' at line 12 Error executing query: (1064) You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DROP TABLE mysql.user' at line 13 Error executing query: (1064) You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DROP TABLE mysql.user' at line 14 |