Bạn không thể chèn một mảng trực tiếp vào MySQL dưới dạng MySQL không hiểu PHP kiểu dữ liệu. MySQL chỉ hiểu SQL . Vì vậy, để chèn một mảng vào cơ sở dữ liệu MySQL, bạn phải chuyển đổi nó thành một câu lệnh SQL. Điều này có thể được thực hiện thủ công hoặc bởi một thư viện. Đầu ra phải là INSERT
tuyên bố.
Cập nhật cho PHP7
Kể từ PHP 5.5
mysql_real_escape_string
đã không được dùng nữa và kể từ PHP7, nó đã được loại bỏ . Xem: tài liệu của php.net về quy trình mới.
Câu trả lời ban đầu:
Đây là câu lệnh chèn MySQL chuẩn.
INSERT INTO TABLE1(COLUMN1, COLUMN2, ....) VALUES (VALUE1, VALUE2..)
Nếu bạn có một bảng với tên fbdata
với các cột được trình bày trong các khóa của mảng của bạn bạn có thể chèn bằng đoạn mã nhỏ này. Đây là cách mảng của bạn được chuyển đổi thành câu lệnh này.
$columns = implode(", ",array_keys($insData));
$escaped_values = array_map('mysql_real_escape_string', array_values($insData));
$values = implode(", ", $escaped_values);
$sql = "INSERT INTO `fbdata`($columns) VALUES ($values)";