-1

チェックボックス用の HTML フォームを作成しました。

<td>   
    <input type="checkbox" name="mode[]" id="mode" value="sweet"/>Sweet<br />
    <input type="checkbox" name="mode[]" id="mode" value="sour"/>Sour<br />
    <input type="checkbox" name="mode[]" id="mode" value="creamy"/>Creamy<br />
    <input type="checkbox" name="mode[]" id="mode" value="bland"/>Bland<br />                
</td>

これは、php ページのアクション コードです。

for ($i=0; $i<sizeof($mode); $i++)
{
    $mode[$i] = mysql_real_escape_string($mode[$i]);

    $query  = "INSERT INTO frutesdetails(fruitname,fruitcolor,seasonfrom,seasonto,fruitetaste,fruitbenefit) VALUES ('{$fruitname}', '{$category}', '{$startdate}', '{$enddate}','.$mode[$i].','{$fruitbenefit}')";   
}
$insertresults = mysql_query($query) or die(mysql_error());
    ?>

チェックボックスのすべてではなく、1つの値しか取得していません。

4

2 に答える 2

5

ループを一巡するたびに、クエリをデータベースに渡す必要があります。

現時点では、送信されたアイテムごとにクエリを作成しますが、最後のアイテムのみをデータベースに渡します。

mysql_queryコールをループ内に移動します。


とはいえ、最新の API (PDO など) に移行し、ループの前にクエリを準備済みステートメントとして構築し、ループ内のデータで実行する方がよいでしょう。

于 2013-07-17T13:19:45.573 に答える