-1

以下のフォームに問題があります。アイテムをクリックすると、アイテムがキャッチされ、mySQL テーブルが更新され、1 つのアイテムしか表示されません (チェックしたすべてのアイテムを表示するにはどうすればよいですか?)。

また、数量を入力しても、mySQL テーブルが更新されず、各アイテムに複数の数量を入力すると 0 と表示されます。

よろしければお手伝いいただけませんか?

<tr>
<th>Shirts</th>
<th>Quantity</th>
</tr>

<tr>

<td>
        <br />
        <input type="checkbox" name="items" value="SH01" /><label for="rd1">Obey T-Shirt: $9.99</label></div> <br />
        <input type="checkbox" name="items" value="SH02" /><label for="rd1">Obey Professor: $9.99</label></div> <br />
        <input type="checkbox" name="items" value="SH03" /><label for="rd1">Hustle T-Shirt: $9.99</label></div> <br />
        <input type="checkbox" name="items" value="SH04" /><label for="rd1">Hip-Hop Support: $9.99</label></div> <br />
        <input type="checkbox" name="items" value="SH05" /><label for="rd1">90's Shirt: $9.99</label></div> <br />
        <input type="checkbox" name="items" value="SH06" /><label for="rd1">DOPE Shirt: $9.99</label></div> <br />
        <br />
</td>

<td> 
        <br />
        <input type="text" name="qty" size ="2"/><br/>
        <input type="text" name="qty" size="2"/><br/>
        <input type="text" name="qty" size="2"/><br/>
        <input type="text" name="qty" size="2"/><br/>
        <input type="text" name="qty" size="2"/><br/>
        <input type="text" name="qty" size="2"/><br/>
        <br />

</td>

</tr>

<tr>

    <td>
        <br />
        <input type="checkbox" name="items" value="SO1" /><label for="rd1">Shoe - Red Lace: $19.99</label></div><br />
        <input type="checkbox" name="items" value="SO2" /><label for="rd1">Shoe - Red High Top: $19.99</label></div><br />
        <input type="checkbox" name="items" value="SO3" /><label for="rd1">Shoe - White: $19.99</label></div><br />
        <input type="checkbox" name="items" value="SO4" /><label for="rd1">Shoe - Black: $19.99</label></div><br />
        <input type="checkbox" name="items" value="SO5" /><label for="rd1">Shoe - Black High Top: $19.99</label></div><br /> 
        <input type="checkbox" name="items" value="SO6" /> <label for="rd1">Red Basketball: $19.99</label></div><br />
        <br />
    </td>

    <td> 
        <br />
        <input type="text" name="qty[]" size ="2"/><br/>
        <input type="text" name="qty[]" size="2"/><br/>
        <input type="text" name="qty[]" size="2"/><br/>
        <input type="text" name="qty[]" size="2"/><br/>
        <input type="text" name="qty[]" size="2"/><br/>
        <input type="text" name="qty[]" size="2"/><br/>
        <br />

</td>
</tr>

<tr>
    <td>
        <br />
        <input type="checkbox" name="items" value="SN1" /> <label for="rd1">Snapback Bullets: $29.99</label></div><br />
        <input type="checkbox" name="items" value="SN2" /><label for="rd1">Snapback: $29.99</label></div><br />
        <input type="checkbox" name="items" value="SN3" /><label for="rd1">Snapback Bullets: $29.99</label></div><br />
        <input type="checkbox" name="items" value="SN4" /><label for="rd1">Snapback Bullets: $29.99</label></div><br />
        <input type="checkbox" name="items" value="SN5" /><label for="rd1">Snapback Bullets: $29.99</label></div><br />
        <input type="checkbox" name="items" value="SN6" /><label for="rd1">Snapback Bullets: $29.99</label></div><br />
        <br />
    </td>
<td> 
        <br />
        <input type="text" name="qty" size ="2"/><br/>
        <input type="text" name="qty" size="2"/><br/>
        <input type="text" name="qty" size="2"/><br/>
        <input type="text" name="qty" size="2"/><br/>
        <input type="text" name="qty" size="2"/><br/>
        <input type="text" name="qty" size="2"/><br/>
        <br />

</td>   
</tr>

</tr>
</table>
<br />
<input type="submit" name="submit">
</form>

<?php

if (isset($_POST['submit']))
{
$con = mysql_connect('$localhost','$url','$pass');
if (!$con)
{
die("Could Not Connect: " . mysql_error());
}

mysql_select_db("$username",$con);

$sql = "INSERT INTO Order_Information(Order_ID,Order_Items,Order_Quantity) VALUES (null,'$_POST[items]','$_POST[qty]')";

mysql_query($sql,$con);

mysql_close($con);
}

?>
4

3 に答える 3

1

HTML

<input type="checkbox" name="items" value="SH01" />
<input type="text" name="qty_SH01" ..../>

PHP

foreach ($_POST as $key => $val) {
   if (!preg_match("/^SH/", $key)) continue;

   $qty = $_POST['qty_' . $key];

   $sql = "INSERT INTO Order_Information(Order_Items,Order_Quantity) VALUES ('$key', '$qty')";
}
于 2013-06-21T09:31:58.020 に答える
-1
  1. を使用するときに$_POST[items]、アポストロフィ - を忘れていました$_POST['items']

  2. チェックされたすべてのチェックボックスを取得するには、ループが必要です。

    if(!empty($_POST['check_list']))
    {
        foreach($_POST['items'] as $item)
        {
            ....
        }
    }
    
于 2013-06-21T09:24:10.003 に答える