- ベストアンサー
SELECTタグでのデータ取り出し
データベースから情報を取り出す時に <INPUT TYPE=text>でしたら、属性valueで ダイレクトに情報を取れると思うのですが、 <SELECT>タグや、<INPUT TYPE=radio/checkbox>タグ、 など、複数個の値がある場所に 情報を反映させるにはどうしたらいいでしょうか? 要は、その値にselectedを付けて、 ページを表示したら、既にその値が選択されている ような形をするにはどうしたらいいでしょうか。 ※例えば、Aさんが「スポーツ」というDBのフィールドに 「野球」とセットされているとしたら、 この値を編集する(phpファイルの)ページで、 <SELECT>タグに既に「野球」が選択されている状態です。 雑文失礼しました。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
すでに、AさんがDBに登録してある事が前提ですね?でしたら、まずは、DBからselect関数で引っ張って来ることが必要になると思いますので、 <?php $spolist = mysql_query("select カラム名 from DB名",${接続ID}); $sports = mysql_fetch_array(${spolist}); ?> <input type="checkbox" name="sports" value="<?php print "${sports['カラム名']}" ?>" checked><?php print "${sports['カラム名']}" ?> </select> と作れば、そのカラムに入力してあるデータが取り出せて、アクセスした人それぞれに自動対応できます。いかがでしょう(^.^)\
その他の回答 (2)
- nikuq
- ベストアンサー率22% (8/36)
#2です。 さっきのはチェックボックスの場合でしたが、selectの場合も一応考えてみました。 <?php //この関数は事前にデータベースが選択されている必要があります!ご注意を!! $spolist = mysql_query("select カラム名 from DB名","${接続ID}"); $sports = mysql_fetch_array(${spolist}); ?> <select name="sports"> <?php if("${sports}") { ?> <option value="<?php print "${sports['カラム名']}" ?>" selected> <?php print "${sports['カラム名']}"; } ?> <option value="バスケットボール"> バスケットボール </option> <option value="サッカー"> サッカー </option> <option value="卓球"> 卓球 </option> </select> こうしておけば、もしsportsというカラムに何も入っていなければ表示されず、入っていればその情報が表示される事になると思います。ちょっとやってみてください!
- kuwatch_n_n
- ベストアンサー率50% (3/6)
チェックボックスの編集は <input name="sports" type="checkbox" value="野球"<?php echo(($変数 == "野球")?"checked" : ""); ?>>野球 のような形で使ってます。 “selected”はプルダウンメニュー等で使ってます。
お礼
ご返答有難う御座います。 なるほど、参考になりました。後ほど試してみます。
お礼
有難う御座いました。 勉強になりました。