困っています(質問のレベルは超初心者です)。
PHPでフォームを作っていますが、リストボックスに表示させる項目に該当するものがなかった場合、直接入力ができるようにしたいのですが、そういう事はできるのでしょうか。できる場合、どうやったらできるか教えて下さい。
もし、上の事ができない場合、リストボックスの「その他」を選んだ時だけ横にあるテキストボックスが入力可になる、というような事はどうやったらできるのでしょうか。
超初心者ですので、当たり前の事が分かっていないかも知れませんが、どうぞよろしくお願いします。
No.5ベストアンサー
- 回答日時:
PHP利用者です。
リスト、テキストフィールド
2つを使うのが簡単かと思います。
その他の場合は、テキストフィールドに入力する方法にして。
#その他を選んで、テキストに入力がない場合エラーメッセージを出す。
if ($list eq "その他" and $text eq "")
{$error = "その他の場合は、記入して下さい。";}
#リストでその他を選んだ時は、テキストの値を代入。
if ($list eq "その他")
{$list = $text;}
とPHP側で処理すればいいと思います。
これでいかがでしょうか?
これならJava Scriptを使わず、PHPだけで処理が可能です。
ご回答ありがとうございます。JavaScriptの方はまだまったく確認できていなかったので、PHPだけで処理できる上記の方法で試してみたいと思います。初心者レベルの質問かと思いますが、教えて頂き助かりました!
No.4
- 回答日時:
こんばんは。
>PHPとJavaScriptを併用するに当たって、「本当は併用しないほうがいい」とか、「PHPとJavaScriptの併用は本当に普通の話で、処理が重くなるなどの問題は起きない」
JavaScriptを使う、使わないはPHPとの併用というか、
ブラウザの問題(JavaScriptの動作を切っている)が
出てくることが多いです。
サーバ側(PHP)とクライアントのブラウザ(JavaScript)併用しなければぜんぜんしませんし、
必要なら使います。
例えば、JavaScriptのみで入力チェックを行うと
動作が切ってあればノーチェックでサーバ側(PHP)
で処理してしまいます。
会社内で使用するシステムであれば頻繁にJavaScript
を使っている傾向があると思いますが、(ある程度ブラウザ等も指定できるため)
誰が見るかわからないページであると相手のブラウザは
いろいろな種類が出てきてしまいます。
JavaScriptを多用してもサーバ側の処理が重くなることはありません。
フォームの入力をいじる程度のスクリプトなら
閲覧者側の処理の負担も気にすることもない程度です。
>#3のご回答も合わせて考えた場合、JavaScriptを併用すれば、「リストボックスに登録者の選択肢がなければ、そのリストボックスにテキスト入力もできるようにする」事は可能でしょうか?
横にテキストフィールドを用意して入力したものを
リストボックスに追加は可能でしょうが、
リストボックスに直接テキスト入力は不可能です。
LancerVII様、ご回答本当にありがとうございます。分かり易くご説明頂き、しかも急いでいる、という事をご考慮頂き、大変助かりました。今回、初めての質問だったのですが、自分になりに調べても分からなかったため、このような形でご意見を頂けた事に感謝しています。
できること、できないこと、普通は知っている常識みたいなものがほとんどない状況ですが、しっかり勉強していきたいと思います!JavaScriptもこれからなので壁は色々あると思いますが、頑張ってみます。
No.3
- 回答日時:
こんばんは。
補足に関しての回答を忘れました。
>また、PHPにJavaScriptを埋め込むという事はできるのでしょうか?
JavaScriptはブラウザに読み込まれて初めて解釈されるので、普通にタグを出力する中にJavaScriptを書くだけです。
==================================================
<?php
//サーバ側で行う処理
$message = "PHPにて値を代入しました。";
?>
<html>
<head>
<title>test</title>
<script type="text/javascript">
<!--
var message = "<?= $message ?>";
function init(){
alert(message);
}
//-->
</script>
</head>
<body onLoad="init();">
</body>
</html>
==================================================
例えば上記のような書き方で、PHP側の$message変数の
内容が、ページが読み込まれた際に表示されます。
ご回答ありがとうございます。
私の当初の質問の直接のご回答ではありませんが、とても参考になりました。今は、まずとても単純な(と思われる)事でつまずいていますので、ありがとうございました。具体的に示して頂きましたので、良く分かりました。
厚かましいのですが、PHPとJavaScriptを併用するに当たって、「本当は併用しないほうがいい」とか、「PHPとJavaScriptの併用は本当に普通の話で、処理が重くなるなどの問題は起きない」など、有識者の方からのアドバイスなどがあれば、非常に助かります。よろしくお願いします。
No.2
- 回答日時:
こんばんは。
実現しようとすると、JavaScriptを併用する
形になると思います。
または単純にテキストボックスは常に入力可能で、
その他以外の選択項目を選択した場合はテキストフィールドに
値が入っていてもPHP側で無視する方法もあると思います。
(その他が選択され、テキストボックスに入力があった場合は、そのテキストボックスの値を使用する)
もしくは、テキストボックスに値が入っていたら
リストボックスの選択内容にかかわらず
テキストボックスの値を使用する。
この辺はどういう仕様にするかで変わってくると思いますが。
ご回答ありがとうございます。
ご指摘の通り、PHP側で有効or無効を判断させるのは、一応考えてみました。この場合は、登録する人に誤解を生じさせないような配置と文章を設ければ私でもできるかなと思います。ただ、できれば登録する人が間違える可能性をなるべく除きたい、と考えています。
#3のご回答も合わせて考えた場合、JavaScriptを併用すれば、「リストボックスに登録者の選択肢がなければ、そのリストボックスにテキスト入力もできるようにする」事は可能でしょうか?
何度も申し訳ありません。よろしくお願い致します。
No.1
- 回答日時:
>リストボックスに表示させる項目に該当するものがなかった場合
「無かった場合」というのはどのような状態なのでしょうか
例えば
$list = array(0,0,0,0,0);
のような状態なのか
$list = NULL;
のような状態なのか
いずれにせよ、リストボックスに表示させる為のデータをどこかを観て判定させるわけですからどういう状態が「無かった場合」なのか分からないとアドバイスできません
具体的にソースを見せてもらえば各識者の方々から回答が得られるとおもいます
>「その他」を選んだ時だけ横にあるテキストボックスが入力可になる
PHPでは不可能です、JavaScriptを使うことになります
この回答への補足
アドバイス頂き、ありがとうございます。
「該当するものがなかった場合」というのは、「こう動かしたい」という状況から言うと、例えばリストボックスに「青いかばん」「赤いかばん」「黒いスボン」の3種類の候補から選択できるようになっているのだけれど、実際には「茶色の靴」としたいので、どこかに「茶色の靴」と入力させたい、というような事です。登録する人が、リストをざっと見て、その中に自分の登録したい内容がなかったら、そのリストボックスに直接入力できれば一番いいのですが・・・。
今はDreamWeaverを使って、フォームの形を作っていますが、実際にはMySQLと連動させる予定です。ただ、そちらも超初心者で(今からの勉強で)、ソースをご提示することができません。このような説明でお分かり頂けるでしょうか?
また、PHPにJavaScriptを埋め込むという事はできるのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) Accessで予定表を作成しようとしてます。 テーブル フィールド名 連番 オートナンバー型 年月日 2 2023/07/23 11:40
- JavaScript ラジオボタンによるフォームの開閉を行いたい 3 2022/03/31 21:30
- Excel(エクセル) エクセルの数式で教えてください。 1 2023/06/15 14:11
- その他(プログラミング・Web制作) 入力フォームへ、データを自動的に入力するプログラム。どうやって作る? 4 2023/01/16 10:24
- Excel(エクセル) 【EXCEL】=セル&セルが上手く表示できない。 7 2022/09/04 21:32
- ソフトウェア データ入力のインターフェースについて 2 2022/09/27 09:07
- Excel(エクセル) IF 関数で「〇〇 という文字を含む場合」の分岐処理で表示された数字はSUMで数字集計できますか? 3 2022/08/02 16:29
- Excel(エクセル) 【エクセル」 特定のセルで条件抽出した列を、別シートに上から詰めて表示したい。 8 2022/04/08 16:00
- 郵便・宅配 マンションなどの宅配ボックスの利用方法について 4 2023/03/17 21:47
- Excel(エクセル) エクセルについて教えてください。 2 2023/06/14 11:11
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PHPでのログイン機能でのメール...
-
formの確認ページからformに戻...
-
動的にhtmlテーブルを表示
-
IFRAME内PHPのセッション変数取...
-
PHPで返信メールにチェックボッ...
-
携帯サイトにお気に入りに登録...
-
フォームを使わずにPOST送信す...
-
switch()文で値の大小比較
-
ミュージックのアートワークを...
-
【PHP】APIやRSSが存在しないサ...
-
perl LWPでURLにアクセスした時...
-
別サイトのHTML内にある情報を...
-
ローカルのコンピュータ名を取...
-
DTOとEntityの差は何ですか。
-
どういうプログラムを関数化を...
-
pdftkを使った処理をバッチファ...
-
bashの関数の引数にスペースが...
-
インターネットの閲覧履歴を時...
-
GoogleやYahoo!で検索したサイ...
-
PHP、UNIXタイムでの日時計算に...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
php 入力画面から確認表示画面...
-
ログイン画面から入って、「戻...
-
POSTで受け渡したものを保存し...
-
php history.back()の戻るボタ...
-
フォームを使わずにPOST送信す...
-
VBAで重複チェックの仕方を教え...
-
PHPで値を保持する方法
-
ブラウザバックしてもチェック...
-
IFRAME内PHPのセッション変数取...
-
【Java】投稿完了画面リロード...
-
cURL関数を使用したphpからのpo...
-
HTMLエスケープ処理とデーター...
-
php に関して質問です。 各ユー...
-
asp.netでのセッションを使用し...
-
「ページネーション」で検索キ...
-
PHPで名寄せするには?
-
セッションを使用したページ遷移
-
閉じるボタン「×」を制御したい
-
ブラウザの戻るボタンで重複登...
-
GETのメリットについて
おすすめ情報