Home >Backend Development >PHP Tutorial >How Can I Insert a PHP Array into a MySQL Database?
Insert an Array into a MySQL Database with PHP
Inserting an array directly into a MySQL database is not directly possible because MySQL does not understand PHP data types. To successfully integrate the data, it needs to be converted into a SQL statement.
Step 1: Construct the SQL INSERT Statement
The standard MySQL INSERT statement follows this format:
INSERT INTO TABLE_NAME (COLUMN1, COLUMN2, ...) VALUES (VALUE1, VALUE2, ...)
To convert your array into a SQL statement, first gather the column names and their corresponding values from the array keys.
$columns = implode(",",array_keys($insData));
Next, use the "real_escape_string" function to escape any special characters that might conflict with the SQL syntax.
$link = mysqli_connect($url, $user, $pass, $db); $escaped_values = array_map(array($link, 'real_escape_string'), array_values($insData));
Finally, combine the escaped values and form the SQL statement:
$values = implode("', '", $escaped_values); $sql = "INSERT INTO `fbdata`($columns) VALUES ('$values')";
Step 2: Execute the SQL Statement
Once the SQL statement is constructed, execute it using the appropriate MySQL extension. For instance, with MySQLi:
mysqli_query($link, $sql);
Note for PHP 7
The "mysql_real_escape_string" function has been deprecated in PHP 7 and removed in PHP 8. Refer to the PHP documentation for the updated procedure for escaping special characters.
The above is the detailed content of How Can I Insert a PHP Array into a MySQL Database?. For more information, please follow other related articles on the PHP Chinese website!