2013-03-26 71 views
0

我是新的php & mysql。現在我用php & mysql開發了一個發票應用程序。 提交發票後,我想減少數量的行我的問題。鎮定,我卻用這個代碼PHP的foreach combine_array - 相同的價值probelm

HTML

<input type="text" name="qty[]" class="productQty"/> 
<input type="text" name="product_id[]" class="productId" readonly/> 

PHP

<?php 
$result1 = mysql_query("SELECT * FROM items"); 
if (!$result1) { 
    die("Query to show fields from table failed"); 
} 
$qty = $_POST["qty"]; 
$qtys = array_values($qty); 
$id= $_POST["product_id"]; 
$ids = array_values($id); 
foreach (array_combine($qtys, $ids) as $id => $qty) { 
    $show_id = $id; 
    $quantity = $qty; 
    echo "<p><b>" . $show_id . "</b></p>"; 
    echo "<p><b>" . $quantity . "</b></p>"; 
    /* 
    $stock_update = "Update items set Stock= stock - '$quantity' where ID='$show_id'"; 
    if (mysqli_query($con, $stock_update)) { 
     echo "stock done"; 
    } else { 
     echo "Error creating table: " . mysqli_error(); 
    } 
    */ 
} 

?> 

結果
BKK01

將Pen01

但問題是如果數量值相等。現在導致
將Pen01

無法顯示的第一個項目。我無法解決這個問題。請幫幫我。

回答

0

變化:

foreach (array_combine($qtys, $ids) as $id => $qty) { 

到:

foreach (array_combine($ids, $qtys) as $id => $qty) { 

您的ID和數量都沒有按照正確的順序。而且,我想你的ID將是一個獨特的一所以不會有任何問題

array array_combine (array $keys , array $values) 

編號:http://php.net/manual/en/function.array-combine.php

+0

非常感謝你,先生。這個答案非常有幫助。 – 2013-03-26 12:02:43

+0

@safeer:Cooool:D – 2013-03-26 12:03:40