1.phpの中に1と2の選択肢(ラジオボタン)があります。
・1を選択肢し、submitボタンを押すと【2.php】に移動。
・2を選択肢し、submitiボタンを押すと2.phpを無視して【3.php】に移動。
というプログラムを組みたいのですが、
新しくa.phpというファイルを作成し、
条件分岐、includeかrequire関数でファイルの挿入をする方法しかないのでしょうか?
この方法でも問題なく動いているのですが、
ファイル数が増えてしまい邪魔になってしまいます。
他に方法がありましたら教えてください。
よろしくお願いします。
No.2ベストアンサー
- 回答日時:
デフォルトのページを1.phpとした場合
if($_GET){
if($_GET["a"] == "1"){
-- お菓子が好きなら --
header("LOCATION:2.php");
}else{
-- 嫌いなら --
header("LOCATION:3.php");
}
}else{
-- デフォルト表示 --
?>
お菓子は好きですか?
<form action="1.php" method="GET">
<input type="radio" name="a" value="1">好き
<input type="radio" name="a" value="2">嫌い
<input type="submit" value="送信">
</form>
<?php
}
では、どうでしょう?
ただし、移動後のページには引数は渡されません。
No.3
- 回答日時:
> ファイル数が増えてしまい邪魔になってしまいます。
1機能につき1ページ1ファイルと言うのはある程度理にかなっていますが、ちょっとした画面遷移でいちいちページを作っていたらたまらないと言う事はありますね。
ある程度機能をまとめて一つのファイルにするという事も簡単です。送信されたデータによってswitchで分岐し、表示を決めます。
<?php
//ヘッダー等略
$formstr =<<<EOC
<form action="" method="post">
<input type="radio" name="cc" value="1" />1を選択
<input type="radio" name="cc" value="2" />2を選択
<input type="submit" name="sbm" value="send" />
</form>
EOC;
switch($_POST["cc"]){
case 1 : echo "2.phpの内容";break;
case 2 : echo "3.phpの内容";break;
default : echo $formstr;
}
//以下略
?>
ファイル数はかなり少なく出来ますが、複数でプログラミングするような場合は分かりにくいというデメリットはあります(ファイル数がむやみに多い事も同じですけどね)。
どこかでバランスをとっていく必要がありますね。
参考まで。
No.1
- 回答日時:
少し意味が分からないのですが・・・
>・1を選択肢し、submitボタンを押すと【2.php】に移動。
>・2を選択肢し、submitiボタンを押すと2.phpを無視して【3.php】に移動。
ダイレクトに2.php もしくは 3.phpに移動させたいってことですか?
それなら JavaScript で移動先を指定してやればできます。
a.php のみで処理したいなら別にinclude や require 使わなくても
条件分岐だけで処理すればいいだけだと思うのですが。
ユーザー関数を使うとか。
質問の意味が違ってたらごめんなさい
この回答への補足
質問文が分かりづらくてすみません。
通常なら
1.php → 2.php → 3.phpと移行していくのですが
例えば1.php内で
『お菓子がすきですか?』という質問に対して
選択肢が
1:好き
2:嫌い
・1を選択しsubmitボタンを押すと
2.phpの『どのようなお菓子がすきですか?』の質問に移行。
2.phpの選択肢を選んでsubmitボタンを押すと、3.phpに移行。
・2を選択すると
2.phpに移行せずにダイレクトに3.phpの『ジュースは好きですか?』の質問に移行。
携帯のサイトを作成している為、
JavaScriptが使えないのです。。。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 画像編集・動画編集・音楽編集 Windowsに付属しているビデオエディター。BGMを追加する方法は? 1 2022/06/26 08:54
- MySQL MySQL,JavaScript,PHPコードの結果を表示する方法を教えてください。 1 2023/02/13 17:49
- Visual Basic(VBA) VBAで早押しゲームを作りたい 4 2022/05/12 13:46
- Excel(エクセル) コンボボックス及びリストボックスを5段階連動させる方法をご存知の方ご教授頂きたいです。 Excelで 3 2022/04/03 21:43
- PHP php ラジオボタン 3 2022/11/17 16:36
- Excel(エクセル) マクロを教えてください 3 2023/07/31 21:57
- Excel(エクセル) マクロを教えてください 2 2023/07/30 23:05
- Windows 10 windowsのファイル複数選択について エクスプローラーなどでファイルを複数選択する際、 最初のフ 4 2022/05/22 16:39
- 英語 問題 : I visit the ( ) with my mom every week. 3 2022/08/15 23:49
- HTML・CSS HTMLのフォームについてお尋ねします 1 2022/12/03 21:47
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【WordPress】投稿がないカテゴ...
-
form actionで二つ送信先を指定...
-
ワンクリックしかできないクリ...
-
ボタンのクリック数を合計保存...
-
multipart/form-dataを使ったデ...
-
PHP検索結果を別ページに還移さ...
-
データベース接続 ログインフ...
-
フォントの色を変えるには?
-
PHPのif文でその処理を途中で抜...
-
onedrive にexcelファイルをア...
-
.phpと.incファイルの違いはな...
-
CSV出力にHTMLが入ってしまう
-
バッチを用いたフォルダの自動移動
-
PHPでの複数ファイル出力
-
XML-RPCでsend()できない
-
.htaccessにphp_valueが使用できな
-
文字化けについて
-
VBAでJPGサイズ変更
-
別ファイルの変数を呼び出した...
-
「@$変数」の「@の意味は?」
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
データ送信をボタンを押さずに...
-
form actionで二つ送信先を指定...
-
データベース接続 ログインフ...
-
ボタンのクリック数を合計保存...
-
FORMで送信ボタンと戻るボタン...
-
テキストボックスにデータベー...
-
header(Location: next.php) だ...
-
inputタグでphpを呼び出す際、...
-
Auth認証エラー
-
PHP table内、<a href使って su...
-
値が渡されない
-
別のファイルへ値を受け渡す方法
-
multipart/form-dataを使ったデ...
-
【WordPress】投稿がないカテゴ...
-
header.locationで、画面遷移、GET
-
選択肢により様々なページに飛...
-
PHP検索結果を別ページに還移さ...
-
textareaの受け渡し
-
PEAR Image_QRCodeのエラー
-
xamppでformによるデータの送信...
おすすめ情報