簡體   English   中英

PHP foreach循環具有多個索引變量

[英]PHP foreach loop with multiple index variables

誰能看到以下代碼有什么問題?

我正在嘗試從表單對2個數組進行foreach循環。

表格代碼:

<td>
<input type="checkbox" name="PR[]" value="DP01">Version 1 Daypack - $55.00<br/>
<input type="checkbox" name="PR[]" value="DP02">Version 2 Daypack - $30.00<br/>
</td>
<td>
<input type="text" name="QTY[]" size = "2"/><br/>
<input type="text" name="QTY[]" size="2"/><br/>
</td>

PHP代碼:

if(!empty($_POST['PR']))
{
    foreach (array_combine($_POST['PR'], $_POST['QTY']) as $PRS => $QTYS)
    {
            $sql="INSERT INTO ORDER_TBL (TRANSACTION_ID, CUSTOMER_ID, PRODUCT_ID, QUANTITY)
            VALUES ('','$_SESSION[user]','$PRS,'$QTYS)";

        if (!mysqli_query($con,$sql))
        {
            die('Error: ' . mysqli_error($con));
            exit;
        }
    }
}

這種方式根本不是很好。 無論文本字段為空還是包含內容,都將發布文本字段,而僅在選中復選框時才發布復選框。 這將導致數組的長度不同,並且array_combine將失敗。

進行print_r($ _ POST),您將看到輸入的內容。

而且這甚至都沒有考慮到這將造成的安全噩夢。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM