-1
我正在練習PHP,試圖學習這些細節。這樣做,我正在一個小網上商店工作。其中一個特點是在登錄後檢索購物車。這是可行的,但不知何故,在數組訂單中出現一個索引爲「」的項目。我不知道它是如何到達那裏的,或者如何(如果我不能防止這種情況發生的話)將它從陣列中移除...我試圖將其取消,但這沒有任何效果。這是創建$ _SESSION [「Bestellen」]數組的代碼:數據庫檢索後帶索引「」的數組
$query = "SELECT * FROM orders WHERE user_id = ".$_SESSION['user_id'];
$result = mysqli_query($db, $query);
while ($row = mysqli_fetch_assoc($result)){
foreach($row as $key => $value){
$order[$key] = $value;
$_SESSION['Bestellen'][$order['product_id']]['aantal'] = $order['ammount'];
$_SESSION['Bestellen'][$order['product_id']]['product_id'] = $order['product_id'];
}
$query = "SELECT product_name, price FROM products WHERE product_id = ".$order['product_id'];
$result2 = mysqli_query($db, $query);
while ($row2 = mysqli_fetch_assoc($result2)){
foreach($row2 as $key2 => $value2){
$item[$key2] = $value2;
$_SESSION['Bestellen'][$order['product_id']]['product_name'] = $item['product_name'];
$_SESSION['Bestellen'][$order['product_id']]['price'] = $item['price'];
}
}
}
我在數據庫中具有有序的兩個項目,但陣列結束有(首先在陣列)的第三項,而沒有任何值和索引爲「」:
array(3) {
[""]=>
array(2) {
["aantal"]=>
NULL
["product_id"]=>
NULL
}
[1]=>
array(4) {
["aantal"]=>
string(2) "10"
["product_id"]=>
string(1) "1"
["product_name"]=>
string(6) "boutje"
["price"]=>
string(4) "0.32"
}
[3]=>
array(4) {
["aantal"]=>
string(1) "7"
["product_id"]=>
string(1) "3"
["product_name"]=>
string(7) "schroef"
["price"]=>
string(4) "0.15"
}
}
它是如何到達那裏的?我如何防止這種情況發生?
Ofcourse!這就解釋了!我只是不得不把它從foreach循環中取出來。那就是訣竅。謝謝! – Vlegel 2014-10-20 15:50:35