Mysql
 sql >> Database >  >> RDS >> Mysql

Inserisci l'array nel database MySQL con PHP

Non puoi inserire un array direttamente in MySQL come MySQL non capisce PHP tipi di dati. MySQL comprende solo SQL . Quindi per inserire un array in un database MySQL devi convertirlo in un'istruzione SQL. Questo può essere fatto manualmente o da una libreria. L'output dovrebbe essere un INSERT dichiarazione.

Aggiornamento per PHP7

Da PHP 5.5 mysql_real_escape_string è stato deprecato e da PHP7 è stato rimosso . Vedi:documentazione di php.net sulla nuova procedura.

Risposta originale:

Ecco un'istruzione di inserimento MySQL standard.

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

Se hai una tabella con nome fbdata con le colonne che sono presentate nelle chiavi del tuo array puoi inserire con questo piccolo snippet. Ecco come viene convertito il tuo array in questa istruzione.

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