![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
住所録を作成しています。
趣味をチェックボックスで選択するようにしましたが、1つしか選ばれません。例を挙げましたので教えてください。
if($tou<>""){
$sql = "insert into kainan values (0, '$tou', '$kai')";
$result = mysql_query($sql);
$sql = "select * from jyusho where tou='$tou' order by tou asc limit 1";
$result = mysql_query($sql);
while($row = mysql_fetch_array($result)){
$id = $row["id"];
}
echo "<p>登録完了しました</p>\n";
exit;
}
echo "
<p>データを入力してください<p/>
<form action=\"touroku.php\" method=\"post\">
<p>○登録日:<input type=\"file\" name=\"tou\" size=40 >\n
<p>○趣味:\n
<input type=\"checkbox\" name=\"kai\" value=\"不明\">不明\n
<input type=\"checkbox\" name=\"kai\" value=\"英語\">英語\n
<input type=\"checkbox\" name=\"kai\" value=\"算数\">算数\n
</p>\n
<p><input type=\"submit\" value=\"登録\">
<input type=\"reset\" value=\"クリア\"></p>\n
</form>\n
";
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
>「kai」のフィールドに「英語 算数」と入り、
この運用方法はSQLとしては最悪です。
DBで管理するのに非常に非効率なデータの持ち方です。
検索性もグダグダですが、ほんとにそれでよろしいのですか?
改めるのでしたら「正規化」をキーワードにして検索サイトで
サーチしてみてください。すこし視野が広がるとおもいます。
どうしてもいまのやり方に固執するなら以下のようにやればできます。
当座はこれでしのげますが、あとで苦労をするのはご自身ですので
お勧めはしません。
$val="";
foreach($kai as $val){
$val.=($val==""?"":" ").$val;
}
$sql = "insert into kainan values (0, '$tou', '$val')";
$result = mysql_query($sql);
No.2
- 回答日時:
まず入力フォームのテキストボックス名をkai[]とします。
<input type="checkbox" name="kai[]" value="不明">不明
<input type="checkbox" name="kai[]" value="英語">英語
<input type="checkbox" name="kai[]" value="算数">算数
その上で、foreachで必要回数まわします
foreach($kai as $val){
$sql = "insert into kainan values (0, '$tou', '$val')";
$result = mysql_query($sql);
}
ただしtouがなぜfileになっているかわかりませんが・・・
fileでおくるならformの記述は間違ってますし、
$touはそのままではsqlにわたせないかと
まだ、お礼ではないのですが、「kai」というフィールドに、選んだ分が全部反映がされませんでした。チェックした項目が1つごとに作成されていました。
希望:「英語と算数をチェックしたら」
「kai」のフィールドに「英語 算数」と入り、
「2007/10/1 英語 算数」 と「hyouji.php」に表示させたい。
実際は、
「2007/10/1 英語」
「2007/10/1 算数」と別々に「hyouji.php」に表示されている。
よろしくおねがいいたします。
No.1
- 回答日時:
こんにちは。
素人な回答者です。
<input type=\"checkbox\" name=\"kai\" value=\"不明\">不明\n
で気になったのですが、
「name=\"kai\"」って3つ全部同じ名前でいいんでしたっけ?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- PHP PHPで画像の渡しが上手く行きません。 1 2023/02/02 09:39
- PHP PHP MySQLに画像を直接保存 2 2022/06/05 11:50
- PHP 重複を防ぐ記述について教えて下さい。 3 2023/04/03 14:35
- HTML・CSS ただいま勉強始めたての初心者です。フォームを縦並べにしたいです。 2 2022/11/20 17:18
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- PHP PHPでユーザー情報を入力して簡易ログイン機能をつくってみたのですが 1 2023/05/29 08:51
- JavaScript javascript作成してます。ラジオボタンで判定するコードを書いてます。 1 2023/07/18 11:03
- JavaScript sessionStorageを調べています。 1 2023/06/20 12:41
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
フォームから送信した値とMySQL...
-
接続ができません
-
SQLのVARCHARとVARCHAR2の違い
-
INT型は金額の型に使用するべき...
-
副問合せにLIKE文を使う方法は...
-
ERROR 1045 (28000) (using pas...
-
VBAで変数内に保持された二次配...
-
ユーティリティーとは?OPatch...
-
RPMのmysqlとmysql-serverの違い
-
参考書に従って入力したつもり...
-
ODP.NETのバージョン確認
-
ローカル以外のMySQLをphpMyAdm...
-
mySQLでエラーが出ます。
-
ACCESSとXサーバーをODBCで接続...
-
mysqldが実行できない
-
ADOのバージョンを確認する方法
-
日本語をinsert時に文字化け
-
MySQL sleep が溜まる
-
like句を使って日本語を検索す...
-
SQLで日本語データを入力したい...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
フォームから送信した値とMySQL...
-
PHPにてSQLから取得したデータ...
-
mysql sqlエラー
-
pdfファイルの管理システム
-
MySQLからのデータをページに1...
-
mysqlで作ったテーブルをphpで...
-
PHPでMySQLを使った検索のプロ...
-
mysql データ更新
-
MySQLでの順位付けについて
-
プレースホルダを使った複数カ...
-
検索機能
-
データを一括で処理する方法に...
-
mysql+php リストボックスにつ...
-
PHPでMySQLを使った検索のプロ...
-
PDOでDB ページング
-
配列の要素でmysqlに問い合わせ
-
MySQLでデータ表示
-
mysqlの置換について2
-
フォームからmySQL-DBにデータ...
-
PHP+MYSQLで検索画面を作成し...
おすすめ情報