2015-10-18 3 views
-1

Я пытаюсь поместить несколько записей в свою базу данных, используя php и mysql. Я могу сделать первый INSERT, если не пытаюсь сделать второй. Как только я добавлю вторую вставку, запись вообще не записывается. Я думаю, что это синтаксическая ошибка, но я пробовал очень четкие примеры от http://www.w3schools.com/php/php_mysql_insert_multiple.asp и insert multiple rows via a php array into mysql, но все еще не работает. Единственное различие заключается в конкатенации и полуколинах в конце заявления.Почему мой INSERT INTO для нескольких входов не работает?

Любые идеи, что я могу делать неправильно?

$query="INSERT INTO myTable (
`user1` , 
`user2` , 
`user3` 
) 
VALUES ('data1', 'data2' , 'data3');"; 

    $query .="INSERT INTO myTable (
`user1` , 
`user2` , 
`user3` 
) 
VALUES ('data4', 'data5' , 'data6')"; 
+0

что первый w3schools пример, почему мы вообще говорить не использовать w3schools, у него есть ужасный код. 2-я ссылка имеет отличный пример, но вы полностью игнорируете ее. –

+0

Я попробовал пример со второй ссылки. Я не проигнорировал это. – CloudyKooper

ответ

6

Вы не писать отдельные запросы и добавить их вместе (если вы не используете mysqli_multi_query, которые эти ссылки предполагают, что вы не делаете, и это было бы неэффективным в любом случае). Вам нужно только разделенный запятыми список значений, которые будут вставлены, как только вы построили свой ВСТАВИТЬ заявление:

// Removed semi-colon terminating the query 
$query="INSERT INTO myTable (
`user1` , 
`user2` , 
`user3` 
) 
VALUES ('data1', 'data2' , 'data3')"; 

// removed insert statement, added required leading comma 
$query .=",('data4', 'data5' , 'data6')"; 
+0

Спасибо, что сработало отлично! Ценю вашу помощь. – CloudyKooper

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