初めまして。もしお力を貸していただけるならと思い質問させていただきます。
今、MySQLに登録したデータを修正できるようにするファイルを作成しておりまして、
IDを指定すれば、ラジオボタンに登録されているデータがcheckedされるようにしたいと
考えています。
【MySQL】
[hoge]
id
hogeA 0or1
hogeB 0or1
hogeC 0or1
【update.php】
<?php
require ("../dbconnect.php");
$_REQUEST["id"] = 選択したIDの受け渡し;
$id = $_REQUEST["id"];
$sql = sprintf ("SELECT * FROM hoge WHERE id=%d",
mysql_real_escape_string ($id)
);
$recordSet = mysql_query ($sql) or die (mysql_error());
$data = mysql_fetch_assoc ($recordSet);
$checkedOK = null;
$checkedNG = null;
switch($data["hogeA"]){
case 0:
$checkedOK = 'checked';
break;
case 1:
$checkedNG = 'checked';
}
?>
<html>
<head>
<form method="post" id="updateForm" action="update.php" enctype="multipart/form-data">
<table>
<tr>
<th>hogeA</th>
<td><label>
<input type="radio" name="hogeA" id="hogeA01" class="style02" value="0" <?php echo (htmlspecialchars($checkedOK, ENT_QUOTES)); ?> />
OK</label>
<label>
<input type="radio" name="hogeA" id="hogeA02" class="style02" value="1" <?php echo (htmlspecialchars($checkedNG, ENT_QUOTES)); ?> />
NO</label></td>
</tr>
<tr>
<th>hogeB</th>
<td><label>
<input type="radio" name="hogeB" id="hogeB01" class="style02" value="0" <?php echo (htmlspecialchars($checkedOK, ENT_QUOTES)); ?> />
OK</label>
<label>
<input type="radio" name="hogeB" id="hogeB02" class="style02" value="1" <?php echo (htmlspecialchars($checkedNG, ENT_QUOTES)); ?> />
NO</label></td>
</tr>
<tr>
<th>hogeC</th>
<td><label>
<input type="radio" name="hogeC" id="hogeC01" class="style02" value="0" <?php echo (htmlspecialchars($checkedOK, ENT_QUOTES)); ?> />
OK</label>
<label>
<input type="radio" name="hogeC" id="hogeC02" class="style02" value="1" <?php echo (htmlspecialchars($checkedNG, ENT_QUOTES)); ?> />
NO</label></td>
</tr>
</head>
</html>
とした場合、当然ですがhogeA,hogeB,hogeCには同じ値が入ってしまいます。
hogeB,hogeCも同じ様にSWITCH文を書けば実装できると思うのですが、
foreach等を使って複数のラジオボタンを取得するいい方法があれば、
教えていただきたいです。
説明が不十分で申し訳ありません。もし快くお答えいただける方がいれば大変嬉しく思います。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
こんな風にnameとvalueをつかった配列を用意すればいいでしょう
<?PHP
error_reporting(E_ALL);
$checked=array(
"hogeA"=>array(0=>" checked",1=>"")
,"hogeB"=>array(0=>"",1=>" checked")
,"hogeC"=>array(0=>" checked",1=>"")
);
?>
<input type="radio" name="hogeA" id="hogeA01" class="style02" value="0" <?php echo$checked["hogeA"][0]; ?>><label for="hogeA01">OK</label>
<input type="radio" name="hogeA" id="hogeA02" class="style02" value="1" <?php echo$checked["hogeA"][1]; ?>><label for="hogeA02">NG</label><br>
<input type="radio" name="hogeB" id="hogeB01" class="style02" value="0" <?php echo$checked["hogeB"][0]; ?>><label for="hogeB01">OK</label>
<input type="radio" name="hogeB" id="hogeB02" class="style02" value="1" <?php echo$checked["hogeB"][1]; ?>><label for="hogeB02">NG</label><br>
<input type="radio" name="hogeC" id="hogeC01" class="style02" value="0" <?php echo$checked["hogeC"][0]; ?>><label for="hogeC01">OK</label>
<input type="radio" name="hogeC" id="hogeC02" class="style02" value="1" <?php echo$checked["hogeC"][1]; ?>><label for="hogeC02">NG</label><br>
この回答への補足
早急なお返事ありがとうございます。
今試させていただきましたが上手く実装できませんでした。
hogeA,hogeB,hogeCは別々の<tr></tr>なので、
$checked=array(
"hogeA"=>array(0=>" checked",1=>"")
,"hogeB"=>array(0=>"",1=>" checked")
,"hogeC"=>array(0=>" checked",1=>"")
);
の部分が上手く動作できてないようです。
追加でご指示いただけましたら、よろしくお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- HTML・CSS CSS のみのタブ切り替えについて 1 2023/01/11 16:47
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
- その他(プログラミング・Web制作) seleniumbasic chrome操作について 1 2023/03/29 15:40
- JavaScript Javascriptが機能せず原因が分からないので教えて頂きたいです 3 2023/06/04 14:50
- PHP 掲示板を作成しておりアップロードファイルとメッセージを並べたいので、アドバイスお願い致します 2 2023/07/17 21:01
- PHP PHP MySQLに画像を直接保存 2 2022/06/05 11:50
- PHP PHPで画像の渡しが上手く行きません。 1 2023/02/02 09:39
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
<input type="hidden" >で配列...
-
PHP ボタンが押されたら処理を...
-
PHPで、ボタンを押すと同じペー...
-
フォームへの前回入力値をクリ...
-
syntax error, unexpected '}' ...
-
PHPでフォームから任意の画像削...
-
$_SESSIONについて教えて下さい。
-
フォームでのリセットを使う方法
-
エラーを元の画面に表示させるには
-
検索時の選択内容を保持する方法
-
入力フォーム→確認画面→送信画...
-
HTMLで前の画面に戻る時、入力...
-
複数行のデータ一括更新に関して
-
DBのWHERE~ANDの使い分けをphp...
-
PHPの関数実行
-
チェックボックスのvalueに変数...
-
phpの掲示板で新しい順に表...
-
チェックボックスの全選択/解除...
-
テキストボックスに初期値を入れる
-
extract($_POST)
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
<input type="hidden" >で配列...
-
HTMLで前の画面に戻る時、入力...
-
PHPでユーザー情報を入力して簡...
-
PHP ボタンが押されたら処理を...
-
PHPとHTML+Xamppの掲示板で画像...
-
syntax error, unexpected '}' ...
-
検索時の選択内容を保持する方法
-
PHPでCookieを使った訪問回数に...
-
チェックボックスによる検索
-
PHPで画像の渡しが上手く行きま...
-
フォームでのリセットを使う方法
-
チェックボックスによる検索(...
-
フォームへの前回入力値をクリ...
-
フォームボタンを押すたびに数...
-
php mysql でチェックボックス...
-
PHPの関数実行
-
PHPで、ボタンを押すと同じペー...
-
phpで分からないエラーが出てし...
-
ラジオボタンをsessionで使いたい
-
入力フォーム→確認画面→送信画...
おすすめ情報