Witam,
piszę dla siebie stronę, na której będzie można rozwiązać test z bazy X pytań.
Polega to na tym, że na początku testu tworzymy tablice o Y elementach z bazy danych o indeksach od 0 do Y-1.
Odpowiedzi umieściłem w formularzu, przy kliknięciu "Następne pytanie" zmienia wartość cookies aby załadować kolejne pytanie, a poprawne/błędne odpowiedzi zapisuje do innego cookies.
Część Kodu:
<div id="page" class="container"> <div class="col-md-9"> <div id="img"><img src="img/<?php echo $img[$nr]; ?>.png" height=50% width=100% /></div> <div id="task" class="pg-top-small pg-bot-small"><?php echo $task[$nr]; ?></div> <form action="" method="post"> <?php if($liczba1<11 && $liczba1>0) { echo '<div class="col-md-12 pg-mini"><label class="btn ', $btn_true1 ,' col-md-9 btn-lg"><input type="radio" name="answer" value="',$true1[$nr],'" id="poprawna" class="pull-left">', $true1[$nr], '</label></div>'; } ?> <div class="col-md-12 pg-mini"><label class="btn <?php echo $btn_false1; ?> col-md-9 btn-lg"><input type="radio" name="answer" autocomplete="off" value="<?php $false3[$nr];?>" class="pull-left"> <?php echo $false1[$nr]; ?></label></div> <?php if($liczba1<21 && $liczba1>10) { echo '<div class="col-md-12 pg-mini""><label class="btn ', $btn_true1 ,' col-md-9 btn-lg"><input type="radio" name="answer" value="',$true1[$nr],'" id="poprawna" class="pull-left">', $true1[$nr], '</label></div>'; } ?> <div class="col-md-12 pg-mini""><label class="btn <?php echo $btn_false1; ?> col-md-9 btn-lg"><input type="radio" name="answer" value="<?php $false3[$nr];?>" class="pull-left"> <?php echo $false2[$nr]; ?></label></div> <?php if($liczba1<31 && $liczba1>20) { echo '<div class="col-md-12 pg-mini""><label class="btn ' ,$btn_true1 ,' col-md-9 btn-lg"><input type="radio" name="answer" value="',$true1[$nr],'" id="poprawna" class="pull-left">', $true1[$nr], '</label></div>'; } ?> <div class="col-md-12 pg-mini""><label class="btn <?php echo $btn_false1; ?> col-md-9 btn-lg"><input type="radio" name="answer" value="<?php $false3[$nr];?>" class="pull-left"><?php echo $false3[$nr]; ?></label></div> <?php if($liczba1<41 && $liczba1>30) { echo '<div class="col-md-12 pg-mini""><label class="btn ', $btn_true1 ,' col-md-9 btn-lg"><input type="radio" name="answer" class="pull-left" value="',$true1[$nr],'" id="poprawna">', $true1[$nr], '</label></div>'; } ?> <input type="hidden" value="ukryty" name="ukryty" /> </div> <div class="col-md-3 text-center"> <h1>Numer pytania:</h1><h2><?php echo $nr;?></h2> <br><br><br><br> <?php echo '<button type="button" class="btn btn-info btn-large"><input type="submit" style="background:none; border:none;" value="Następne pytanie" name="next" /></button>'; ?> </form> </div> </div>
function set_cookies() { setcookie('nr_ask', 1); setcookie('true', 0); }
Pytania wyświetlają się dobrze, tylko mam jeden problem - gdy rozpoczynam test i zaznaczam odpowiedź przy pierwszym pytaniu i naciskam button "następne pytanie" aktualizuje cookies jednak nie zmienia na kolejne pytanie. Dopiero przy drugim lub trzecim kliknięciu buttona zmienia się pytanie na nr 2.
Już wiele kodu usuwałem, edytowałem i nadal nie wiem co może być przyczyną. Jeżeli to nie wystarczy wrzucę skrypt na serwer.
Oczywiście przed całym kodem definiuję zmienną $nr.
$nr=$_COOKIE['nr_ask'];
Pozdrawiam.