
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
ANo.3さんと同様な回答になるかもしれませんが・・・
私の場合、PHPスクリプトは1つで、サブルーチンによって分岐処理を行っています。
また、ロジック(PHP)とビュー(画面)は極力分離して処理を行ってます。
例えば、「入力内容を確認する」ボタンを押下された時の処理は、入力チェックを行い、
エラー項目をエラーメッセージ変数に格納しておきます。
後は、そのエラーメッセージ変数の内容に応じて以下の処理に分岐させています。
●エラーが存在しない場合
→確認画面出力。
●エラーが存在する場合
→エラーメッセージを含む入力画面再出力。
※入力画面、エラーメッセージを含む入力画面はエラーメッセージを表示するか否かの違
いのみの場合もあるかと思うので、共通のビュー(画面)を使用し、切り替えて表示を行っ
ています。
こんな感じで如何でしょう?
No.3
- 回答日時:
がると申します。
PHPは特に「HTMLとロジックを混ぜて書ける」ために色々と誤解が発生しやすいのですが。
基本的には最低でも2本のプログラム(PHP)と二つのHTMLを用意してください。
仮に。入力画面のhtmlをinput.html、完了画面をfin.htmlとします。
一本目のプログラム「input.php」は、非常に単純です。とりあえず「input.htmlを出力する」だけでよろしいかと思います。
二本目のプログラム「fin.php」では、少々複雑な挙動をさせます。
まず入力チェック。
もしここでNGの場合、input.htmlを基準に「入力値をvalueに入れておいてあげる(除く「パスワード、クレジットカード情報などの隠匿性の高い情報」)」+「適切なエラーメッセージを出力させる」で、終了します。
入力チェックがOKなら、情報を適切に処理します。
こういった挙動をさせる場合、テンプレートエンジンなどを用いるのが大変に有効かと思われます。
あと。JavaScriptは「使わないことを前提にしたほうが無難」です。間違っても「JavaScriptでやる必要がある」なんてことはありえません。
No.2
- 回答日時:
やったほうがユーザビリティが高いためやっているだけで
javascriptでやる必要はありません。
フォームをサブミットして、受けたデータをPHPのみで検証する
方式でも十分実用に耐えうる仕組みは可能です。
PHPでチェックするのであれば、想定されるデータをもとに、
送られてきたデータをチェックするだけの話なので非常にベタな
チェックプログラムですから、そんなに難しくないでしょう。
実際にご自身でソースをかいてみて詰まったところで質問なさるとよろしいかと。
No.1
- 回答日時:
JavaScriptでやらないといけないし、PHP側でも同じ事をしなければ、そのシステムの脆弱性になってしまいます。
テキストフィールドなら
document.getElementById('テキストフィールドのid属性').value
に値が設定されているか見ればいいと思います。
値が無いのならば、適当な場所にエラーを表示させればいいのでは
無いでしょうか。エラーを表示する場所にdivを置いておき、
document.getElementById('divのid属性').innerHTML = "エラーだよ";
とします。
なお、PHP側では$_RESUTST['テキストフィールドのname属性']に
値があるかどうかを調べます。値があるかどうかより、値が正しい
値かどうか(例:数字を入れるところに文字が入ってないか等)を
調べる方がいいと思いますが・・・。
そんなかんじです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript 助けてください!スパムメールがとんでもなく大量に届きます。 3 2023/08/10 16:32
- Access(アクセス) Accessで予定表を作成しようとしてます。 テーブル フィールド名 連番 オートナンバー型 年月日 2 2023/07/23 11:40
- 賃貸マンション・賃貸アパート 賃貸:24時間緊急駆け付けサポートの加入必須?更新時の相談 3 2022/09/08 14:51
- 転職 現在働いていますが、転職を考えています。 転職サイトに登録しようと思っていますが、 現在の会社を入力 1 2022/07/30 19:27
- Visual Basic(VBA) Excel VBAのリストボックスの値を他のフォームに反映させる方法を教えてください。 2 2023/07/14 14:06
- JavaScript ラジオボタンによるフォームの開閉を行いたい 3 2022/03/31 21:30
- Visual Basic(VBA) VBA 重複チェック後に値をワークシートに転記する方法を教えてください。 1 2023/03/19 12:43
- その他(SNS・コミュニケーションサービス) Steamで登録ができません 2 2022/05/01 20:22
- その他(Microsoft Office) マクロについて教えてください、、 5 2023/06/06 22:07
- JavaScript javaScriptで画面に値を入れるには 1 2022/08/14 12:27
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「表参道」が「侮Q道」となる
-
「ページネーション」で検索キ...
-
asp.netでのセッションを使用し...
-
ページ移動での値の保持
-
PHPでデータベース
-
IFRAME内PHPのセッション変数取...
-
Dosブロンプトでtabを出力したい
-
「取得先」という表現について
-
shシェルスクリプト 空白行の...
-
VB2005でXMLデータから複数ある...
-
PHPSESSIDの表示
-
Excel VBA:特定の文字列以降(...
-
DTOとEntityの差は何ですか。
-
【C#】DataGridViewの最大列数...
-
ログインしたら他からログイン...
-
バッチファイルでpingの結果を...
-
ログイン画面をはさんだ後、自...
-
VBA コレクションに2次元配列...
-
Yahoo! JAPAN IDを新規取得でき...
-
ExcelVBAで、FileSystemObject...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
PHPで値を保持する方法
-
php history.back()の戻るボタ...
-
「ページネーション」で検索キ...
-
GETのメリットについて
-
ログイン画面から入って、「戻...
-
asp.netでのセッションを使用し...
-
閉じるボタン「×」を制御したい
-
会員登録システム 仮登録のメ...
-
動的にhtmlテーブルを表示
-
htmlspecialcharsについて
-
jspで作った入力フォーム内...
-
ブラウザバックしてもチェック...
-
実装可能できますか?
-
phpによる画像添付メール送信フ...
-
パスワード認証後の、以降のペ...
-
POSTで受け渡したものを保存し...
-
PHP+Mysqlによる会員制サイト
-
セッションを使用したページ遷移
-
HTMLエスケープ処理とデーター...
-
PDF出力
おすすめ情報