我有數組,其中可能有無限量的元素。我試圖將它們輸入到我的分貝,但它只輸入數組的前3個元素。 我的陣列看起來像這樣For循環只發布數組中的前3個元素 - PHP
array(4) {
["ID"]=>
array(5) {
[0]=>
string(1) "1"
[1]=>
string(1) "2"
[2]=>
string(1) "3"
[3]=>
string(1) "4"
[4]=>
string(1) "5"
}
["firstname"]=>
array(5) {
[0]=>
string(5) "Steve"
[1]=>
string(3) "Dan"
[2]=>
string(3) "Jim"
[3]=>
string(4) "Adam"
[4]=>
string(5) "James"
}
["surname"]=>
array(5) {
[0]=>
string(5) "Smith"
[1]=>
string(6) "Colins"
[2]=>
string(6) "Knight"
[3]=>
string(5) "Lamar"
[4]=>
string(4) "Rays"
}
["submit"]=>
string(5) "Enter"
}
這是我的for循環和SQL語句
$a[0] = $_SESSION['ID'];
$a[1] = $_SESSION['firstname'];
$a[2] = $_SESSION['surname'];
for ($i = 0; $i<count($a); ++$i){
$id = $_SESSION['ID'][$i];
$fname = $_SESSION['firstname'][$i];
$sname = $_SESSION['surname'][$i];
$query = "INSERT INTO orders(id, firstname, surname) VALUES('$id', '$fname', '$sname')";
if (mysqli_query($connection, $query)) {
echo "New record created successfully";
} else {
echo "Error: " . $query . "<br>" . mysqli_error($connection);
}
}
這隻會發布每個數組的元素0,1,2。我怎樣才能改變它,所以它插入所有元素到我的數據庫?
您正循環使用'$ a',它只有3個可見條目。不知道它應該從哪裏插入行。 –
'$ a'數組的用途是什麼?除了錯誤的「count($ a)」之外,你從不使用它。 – Barmar