これは、私がやろうとしていることの例の、明らかに機能していないコードです。
これがディナー メニューで、エコーは現在データベースに保存されているすべての食品であるとしましょう。ユーザーが必要な食品のみを選択すると、それらの選択が別のテーブルに挿入されます。
例:
<form method="post" action="entryform3.php">
<?php
SELECT * FROM foods ...etc...etc...
//Say for example whats echoed below at the moment is value: pizza, apple, steak...etc. So this will echo atleast 3 entries.
echo "For dinner, I'd like ". $result['food'] ."?";
echo "<input type=\"checkbox\" name=\"check\" />Click Me<hr></input>";
echo "<input type=\"hidden\" name=\"item_name\" value=\"$result['food']\"/>";
?>
<input type="submit" value="Add Selected Foods" name="submit"></form>
------------entryform3.php-----------
<?php
$food = $_POST['food'];
if (isset($_POST['check'])) {
INSERT INTO selectedfoods "(foods) VALUES '$food'";
}
//made up example... but if user check marks only apple, and steak from the echo, I want only apple and steak to be inserted into database.
?>
mysqlなどが不足していることに気づきましたが、チェックボックスボタンを個々の値と結び付けることに問題があります。この例を引用した私の部分的に動作するコードは、食品のいずれかがチェックされている場合、最後にエコーされた選択のみを取得します。
そのため、正しい食品の選択はデータベースに送信されず、最後にエコーされたものだけが送信されます。if ステートメントは、チェック ボックスのいずれかが選択されているかどうかのみを通知します。
ありがとう!