フォームからデータベース テーブルへ複数のチェックボックス値を挿入するには、チェックボックス要素の配列の性質を処理するための特別なアプローチが必要です。その方法は次のとおりです:
配列の一部であることを示すために [] を末尾に追加して、フォーム内のチェックボックス名を変更します。これにより、PHP はチェックされた値に配列としてアクセスできるようになります。
<input type="checkbox" name="Days[]" value="Daily">Daily<br> <input type="checkbox" name="Days[]" value="Sunday">Sunday<br> ...
PHP スクリプトで、次を使用してチェックボックスの値を取得します。
$checkBox = $_POST['Days'];
ループを使用して $checkBox 配列を反復し、チェックされた各値をテーブルに挿入します。
if (isset($_POST['submit'])) { foreach ($checkBox as $value) { $query = "INSERT INTO example (orange) VALUES ('$value')"; mysql_query($query) or die(mysql_error()); } echo "Complete"; }
または、次のようにします。 implode() を使用すると、チェックされた値をカンマ区切りの文字列に結合し、テーブル内の 1 つの列に挿入できます。
$checkBox = implode(',', $_POST['Days']); ... $query = "INSERT INTO example (orange) VALUES ('$checkBox')";
このアプローチでは、すべてのチェックされた値が 1 つの列に格納されますが、前の方法ではチェックされた値が 1 つの列に格納されます。メソッドは、各値を別々の行に挿入します。
セキュリティとパフォーマンス上の理由から、mysql の代わりに mysqli を使用するようにコードを更新してください。
以上が複数のチェックボックス値をデータベーステーブルに挿入するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。