<現状>
プログラミング初心者です。
わかりにくい説明かもしれませんが、どうぞよろしくお願いいたします。
phpで作成中ですが、jqueryの方がやり易いようであればjqueryでのやり方でもご教授頂けると幸いです。
ひらがなをカタカナで当てる4択クイズをphpとデータベースmysqlでプログラミング作成中です。
スマホ用です。
phpファイルは、2つです。(katakana_mondai.php と katakana_kotae.php)
■katakana_mondai.php
- 問題と4択の選択肢を表示しています
- 問題と選択肢は、データベースからselectしたものをランダムに表示するようにしています
■katakana_kotae.php
- 答え合わせのページです
- katakana_mondai.phpからPOST送信された結果と答えを照らし合わし、
if文を使って正解、不正解を表示しています
- 一番下に、「次の問題」ボタンを設置していて、クリックするとまたkatakana_mondai.phpに
飛ぶようになっています。
<やりたいこと>
連続正解した時に、katakana_kotae.php(答え合わせのページ)で、「○問連続正解!」と表示させたいです。
例えば、
2問連続で正解した時は、「2問連続正解!」
3問連続で正解した時は、「3問連続正解!」というように、
連続正解したら、その数だけ表示したいです。
10問連続で正解した時は、「10問連続正解!」というように。
そして、もし1回でも間違えたら、連続正解はリセットされる仕組みにしたいです。
これを、上記2ファイルのみで行いたいです。
※可能であれば、katakana_mondai.phpのページでも、
「○問連続正解中」と表示できればなお良いです。
<試してみたこと>
katakana_kotae.phpファイルに、以下のコードを書きました。
自分なりに、こうかな、と思ったやり方は、
(1)正解したら、変数に1を加算していく
(2)変数はSESSION関数で、katakana_mondai.phpとkatakana_kotae.phpの
両ページで保持させる
katakana_kotae.php <?php $rs = ""; //$rsを定義する if($choice == $answer){ //正解の場合は、 if(!empty($rs)){ //もし$rsの中身が空でなければ $rs = $rs+1; //$rsに1を加算して$rsに格納 $rs = $rs."もん れんぞく せいかい!"; //$rsに文字列を付け足して$rsに格納 } }else{ $rs = ""; //不正解の場合は、$rsを空にする } $_SESSION['rs'] = $rs; //$rsをkatakana_mondai.phpに引き継ぐためにSESSIONで保持する ?> <!--連続正解の時のphpスクリプト 終--> <!--連続正解の表示 始--> <div class = "row"> <div class = "col-md-12"> <p><?php if ($choice == $answer){ //正解の場合は、 echo $rs; //$rsを表示する }else{ //不正解の場合は表示しない } ?></p> </div> </div> <!--連続正解の表示 終-->
そして、katakana_mondai.phpでは、以下の記述をしています。
katakana_mondai.ph <?php $rs = ($_SESSION['rs']); $_SESSION['rs'] = $rs; ?>
以上よろしくお願いいたします!
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/08/26 21:20