sql >> Base de Datos >  >> RDS >> Mysql

Insertar matriz en la base de datos MySQL con PHP

No puede insertar una matriz directamente en MySQL como MySQL no entiende PHP tipos de datos. MySQL solo entiende SQL . Entonces, para insertar una matriz en una base de datos MySQL, debe convertirla en una declaración SQL. Esto se puede hacer manualmente o por una biblioteca. La salida debe ser un INSERT declaración.

Actualización para PHP7

Desde PHP 5.5 mysql_real_escape_string ha quedado en desuso y a partir de PHP7 se ha eliminado . Ver:documentación de php.net sobre el nuevo procedimiento.

Respuesta original:

Aquí hay una instrucción de inserción estándar de MySQL.

INSERT INTO TABLE1(COLUMN1, COLUMN2, ....) VALUES (VALUE1, VALUE2..)

Si tiene una tabla con el nombre fbdata con las columnas que se presentan en las claves de su matriz puede insertar con este pequeño fragmento. Así es como su matriz se convierte a esta declaración.

$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)";