0

私はこのPHP/HTMLコードを持っています:

<form method="post" action="create_quote2.php">
<table width="800" border="0" cellspacing="5" cellpadding="5">
  <tr>
    <td><strong>Select</strong></td>
    <td><strong>Image</strong></td>
    <td><strong>Name</strong></td>
    <td><strong>Sale Price</strong></td>
    <td><strong>Quantity</strong></td>
  </tr>
<?php
$sql="SELECT * from products ";
$rs=mysql_query($sql,$conn) or die(mysql_error());
$counter=0;
while($result=mysql_fetch_array($rs))
{
    $counter++;
    echo '<input type="hidden" name="product'.$counter.'" value="'.$_POST["checkbox$i"].'" />';
    echo '<tr>
                <td><input type="checkbox" value="'.$result["sequence"].'" name="checkbox'.$counter.'" /></td>
                <td>Image</td>
                <td>'.$result["title"].'</td>
                <td>&pound;'.$result["saleprice"].'</td>
                <td><input type="text" name="qty" id="qty" size="20" /></td>
              </tr>';
}
echo '<input type="hidden" name="counter" value="'.$counter.'" />';
?>
</table>
<input type="submit" name="submit" value="Next" />
</form>

ボックスがチェックされると、次のコードで次のページに移動します。

<table width="800" border="0" cellspacing="5" cellpadding="5">
  <tr>
    <td><strong>Image</strong></td>
    <td><strong>Title</strong></td>
    <td><strong>Sale Price</strong></td>
    <td><strong>Trade Price</strong></td>
    <td><strong>Quantity</strong></td>
    <td><strong>Total Cost</strong></td>
  </tr>
<?php
for($i=1; $i<=$_POST["counter"]; $i++)
{
    if($_POST["checkbox$i"])
    {
        $counter++;
        $sql="SELECT * from products where sequence = '".$i."' ";
        $rs=mysql_query($sql,$conn) or die(mysql_error());
        $result=mysql_fetch_array($rs);     
        echo '<tr>
                    <td>Image</td>
                    <td>'.$result["title"].'</td>
                    <td>&pound;'.$result["saleprice"].'</td>
                    <td>&pound;'.$result["tradeprice"].'</td>
                    <td>&nbsp;</td>
                    <td>&nbsp;</td>
                  </tr>';   
    }
}
?>
</table>

それは正常に機能し、製品テーブルからすべての正しい製品を選択しますが、各行の投稿された数量値を取得する方法が必要です。

投稿された数量の値を 2 ページ目に表示するにはどうすればよいですか?

PS 私はこのコードの SQL インジェクションについて心配していません...

4

2 に答える 2

1

<input type="text" name="qty'.$counter.'" id="qty'.$counter.'" size="20" />最初のページで使用

次に$_POST["qty{$counter}"]、または$_POST['qty'.$i]関連するセルで

補足として、HEREDOC 構造を使用する方が簡単な場合があるため、エコーするために引用符を追加し続ける必要はありません。

echo <<<BLOCK
<tr>
    <td>Image</td>
    <td>{$result["title"]}</td>
    <td>&pound;{$result["saleprice"]}</td>
    <td>&pound;{$result["tradeprice"]}</td>
    <td>Quantity - {$_POST['qty'.$i]}</td>
    <td>&nbsp;</td>
</tr>

BLOCK;

引用符が互いにあまり混ざり合わないため、HEREDOC は大きな助けになりました。

于 2013-08-08T22:09:52.343 に答える
0

数量を変更するには:

<input type="text" name="qty" id="qty" size="20" />

<input type="text" name="qty'.$counter.'" id="qty" size="20" />

次に、他の入力に対して行うのと同じ方法で参照します。

于 2013-08-08T22:02:44.853 に答える