###前提・実現したいこと
foreachを使ってcsvの問題をループして出しています
最初のifはうまく動くのですがelseif以降がうまく動いてくれません
1問目をループしてしまいます
ラジオボタンを選択して送信したら2問目、3問目を表示したいのですがどうしたらいいのでしょうか
###該当のソースコード
echo"<form method='post' action=''>";//現在の問題番号を持ってきたい if(empty($_POST)){//ポストの中が空の時の処理(一問目) foreach ($ans_arr as $k=>$answer) { $num = $k + 1; $next = $qnum ; $qry = (isset($dat[$next+1])) ? "q=".$next : "end=1"; // 各質問の答え選択HTML echo <<<Q_BODY <div class="choices"> <input type='radio' name='quiz' value="quiz.php?{$qry}&a={$qnum}_{$num}&t={$tid}" accesskey="{$num}">{$num}. {$answer} <input type="hidden" name="quiz" value="$next"> </div> Q_BODY; }//foreach }else if(isset($_POST['quiz'])){//2問目以降(100問まで) foreach ($ans_arr as $k=>$answer) { $quiz2 = $_REQUEST['quiz'];//ラジオボタンの結果をもらう $quiz = $k + 1; $next = $qnum + 1; $qry = (isset($dat[$next+1])) ? "q=".$next : "end=1"; // 各質問の答え選択HTML echo <<<Q_BODY <div class="choices"> <input type='radio' name='quiz' value="quiz.php?{$qry}&a={$qnum}_{$quiz}&t={$tid}" accesskey="{$quiz}">{$quiz}. {$answer} <input type="hidden" name="quiz" value="$next"> </div> Q_BODY; }//foreach print "<br>前の解答"; print "<br>正解は<br>$quiz.$answer<br>"; } echo"<input type='submit' class='btn' value='送信'>"; echo"</form>";
###試したこと
ラジオボタンでnameを取得し、送信させるという作業をループで動かそうと思いソースコードを書いたのですがうまくいきませんでした
説明が下手で大変申し訳ございません
どなたかご教授お願いします
###補足情報(言語/FW/ツール等のバージョンなど)
php csv
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/12/07 02:18
2016/12/07 02:38
2016/12/07 02:49
2016/12/07 03:09
2016/12/07 03:24
2016/12/07 04:03
2016/12/07 04:11