Reputation: 744
I am trying to run a series of insert statements in a for loop using multi-query. The for loop executes properly and the first insert works correctly, but none of the other insert statements are running. No error messages are getting printed, but the code that's meant to print results isn't displaying anything either. Here is my code:
<?php
$conn = new mysqli($server, $user, $pass, $db);
if($conn->connect_error){
die("Connection failed: " . $conn->connect_error);
}
for($i=10; $i<242; $i++){
$p = ($i*9-63);
$sql2= "insert into table(type_id, set_id, group_id, id, sort_order) values (4, '".$i."', '".$p."', 190, 1); ";
$sql2.= "insert into table(type_id, set_id, group_id, id, sort_order) values (4, '".$i."', '".$p."' 81, 3); ";
$sql2.= "insert into table(type_id, set_id, group_id, id, sort_order) values (4, '".$i."', '".$p."' 177, 2); ";
$sql2.= "insert into table(type_id, set_id, group_id, id, sort_order) values (4, '".$i."', '".$p."' 175, 4); ";
$sql2.= "insert into table(type_id, set_id, group_id, id, sort_order) values (4, '".$i."', '".$p."' 202, 5); ";
$sql2.= "insert into table(type_id, set_id, group_id, id, sort_order) values (4, '".$i."', '".$p."' 92, 6); ";
$sql2.= "insert into table(type_id, set_id, group_id, id, sort_order) values (4, '".$i."', '".$p."' 120, 7); ";
$sql2.= "insert into table(type_id, set_id, group_id, id, sort_order) values (4, '".$i."', '".$p."' 209, 8); ";
$sql2.= "insert into table(type_id, set_id, group_id, id, sort_order) values (4, '".$i."', '".$p."' 213, 9); ";
$sql2.= "insert into table(type_id, set_id, group_id, id, sort_order) values (4, '".$i."', '".$p."' 81, 3); ";
if ($conn->multi_query($sql2)) {
do {
/* store first result set */
if ($result = $conn->store_result()) {
while ($row = $result->fetch_row()) {
printf("%s\n", $row[0]);
}
$result->free();
}
/* print divider */
if ($conn->more_results()) {
printf("-----------------\n");
}
} while ($conn->next_result());
}
}
$conn->close();
?>
Any ideas where the code may be failing? I tried hard coding in values instead of using the variables in the inserts and still the same problem.
Upvotes: 0
Views: 170
Reputation: 172
In the values:
values (4, '".$i."', '".$p."' 81, 3);
you seem to be missing a comma after $p."' for all the following lines,
i.e.
values (4, '".$i."', '".$p."', 81, 3);
Hopefully that helps
Upvotes: 1