2015-02-12 2 views
-1

Im пытается вставить следующий массив в таблицу безрезультатно. Я попробовал несколько примеров, но никто не работал.Вставка массива, содержащего несколько массивов в MySQL

Каждый массив POST содержит две строки из входной формы (каждая строка из строки ввода), а ключи данных имеют одно и то же имя столбцов в таблице.

Как вставить эти данные в две строки с одним запросом?

$data = array(
    'user_id' => $_POST['user_id'], 
    'order' => $_POST['order'], 
    'type' => $_POST['type'], 
    'series' => $_POST['series'], 
    'repetition' => $_POST['repetition'], 
    'load' => $_POST['load'], 
    'pause' => $_POST['pause'] 
     ); 

EDIT: Могу поклясться, что я скопировал запрос.

$columns = implode(',',array_keys($data)); 
$values = implode(',',array_values($data)); 

$query = " INSERT INTO userdata ($columns) VALUES ($values)"; 
+0

Это может помочь включить код, который вы пробовали, и дайте нам знать, что конкретно пошло не так. – showdev

+0

Простите, исправил! – Honjudd

ответ

0

Вы можете вставить этот тип массива, как этот

$fields=" ".implode(",",array_keys($data))." "; 
$data="'".implode ("','",$data)."'"; 
$query ="INSERT INTO table_name ($fields) VALUES ($data)"; 
if($query){ 
    mysql_query($query); 
} 
+0

'mysql_' устарел. Вместо этого используйте 'mysqli' или' PDO'. – worldofjr

+0

Его попытка вставить все значения в одну строку – Honjudd

Смежные вопросы