
複数のチェックボックスのうちどれかを初期選択させ、ボタン押下後は選択保持をさせたいです。
片方のみならできるのですが、どなたかご教授いただけるとうれしいです。
現在のソースはこんな感じになっていて選択したものの保持はできるのですが、初期選択ができていません。よろしくおねがいします。
<html>
<body>
<form name="form" method="post">
<?php test1() ?> test1
<?php test2() ?> test2
<?php test3() ?> test3<br><br>
<input type="submit" name="button" value="button">
</form>
<?php
function test1(){
if ($_POST['test1']){
echo "<input type=\"checkbox\" name=\"test1\" checked>";
}else{
echo "<input type=\"checkbox\" name=\"test1\">";
}
}
function test2(){
if ($_POST['test2']){
echo "<input type=\"checkbox\" name=\"test2\" checked>";
}else{
echo "<input type=\"checkbox\" name=\"test2\">";
}
}
function test3(){
if ($_POST['test3']){
echo "<input type=\"checkbox\" name=\"test3\" checked>";
}else{
echo "<input type=\"checkbox\" name=\"test3\">";
}
}
?>
</body>
</html>
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
たとえば、test1だけ初期状態でチェックしておきたいなら
function test1() {
if (array_key_exists('test1', $_POST)){
if ($_POST['test1']){
echo "<input type=\"checkbox\" name=\"test1\" checked>";
}else{
echo "<input type=\"checkbox\" name=\"test1\">";
}
}else{
echo "<input type=\"checkbox\" name=\"test1\" checked>";
}
}
※インデントに全角を使ってますのでこのままコピペはしないでください
このようにすると
「POSTの中にtest1がない時(=初期状態)」と
「POSTの中にtest1があり、チェックされている時」と
「POSTの中にtest1があり、チェックされてない時」を区別できると思います。
こういうことでよろしいのでしょうか。
この回答への補足
D_modeさん、回答ありがとうございます。
やりたいことはあっています。ですが、教えて頂いたソースで試してみたところ最初のif文でelseに入ってしまい、チェックされてもされなくても全てデフォルトのチェックになってしまいうまくいきませんでした。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
検索時の選択内容を保持する方法
-
HTMLで前の画面に戻る時、入力...
-
フォームボタンを押すたびに数...
-
フォームでのリセットを使う方法
-
POSTやGETの変数をフォーム無し...
-
チェックボックスによる検索
-
HTMLのリンクをクリックするこ...
-
パラメーターを隠す
-
同じページでフォームデータを...
-
smartyでチェックボックスをチ...
-
DBの値をチェックボックスに反...
-
POST GET HTTP 404 未検出
-
アップロードの際にファイルパス
-
チェックボックスの値に応じてP...
-
PHP DBの登録情報をラジオボタ...
-
HTMLフォームで複数選択のチェ...
-
ラジオボタンをsessionで使いたい
-
POSTデータのNAME属性をVALUEに...
-
PHP ボタンが押されたら処理を...
-
PHP,HTMLで顧客登録画面を作っ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
HTMLで前の画面に戻る時、入力...
-
検索時の選択内容を保持する方法
-
DBの値をチェックボックスに反...
-
$_SESSIONについて教えて下さい。
-
PHPで、ボタンを押すと同じペー...
-
PHP ボタンが押されたら処理を...
-
<input type="hidden" >で配列...
-
アンケートフォームの作り方
-
入力した部分を表示させたまま...
-
画面が更新されてもチェックボ...
-
ラジオボタンをsessionで使いたい
-
チェックボックスによる検索
-
PHPで画像の渡しが上手く行きま...
-
同じページでフォームデータを...
-
POSTをボタンではなくリンク等...
-
配列をhiddenで
-
HTMLのvalue値を取得したい。
-
パラメーターを隠す
-
選んだ数字だけ繰り返す
-
PHPで画像データーのアップロー...
おすすめ情報