我想存储数组值到会话变量。并在下一页中检索这些值

时间:2015-12-09 04:43:24

标签: php jquery arrays

我正在开发一个测验应用程序php。我想将测验数据和用户选择的选项输入到下一页..我想在使用时单击摘要按钮时显示测验摘要。请帮助我如何执行此操作。

<?php   

          require 'dataconnection.php';

          $res = mysql_query("select * from questions where category_id=$category ORDER BY RAND() LIMIT 20") or die(mysql_error());
                    $rows = mysql_num_rows($res);


          echo $rows;
          $i=1;
           while($result=mysql_fetch_array($res)){


               if($i==1){?>
                       <div id='question<?php echo $i;?>' class='cont'>

                    <p class='questions' id="qname<?php echo $i;?>"> <?php echo $i?>.<?php echo $result['Question'];?></p>
                    <input type="radio" value="A" id='radio1_<?php echo $result['QNo'];?>' name='<?php echo $result['QNo'];?>'/><?php echo $result['Option A'];?>
                   <br/>
                    <input type="radio" value="B" id='radio1_<?php echo $result['QNo'];?>' name='<?php echo  $result['QNo'];?>'/><?php echo $result['Option B'];?>
                    <br/>
                    <input type="radio" value="C" id='radio1_<?php echo $result['QNo'];?>' name='<?php echo $result['QNo'];?>'/><?php echo $result['Option C'];?>
                    <br/>
                    <input type="radio" value="D" id='radio1_<?php echo $result['QNo'];?>' name='<?php echo $result['QNo'];?>'/><?php echo $result['Option D'];?>
                    <br/>
                    <input type="radio" checked='checked' style='display:none' value="5" id='radio1_<?php echo $result['QNo'];?>' name='<?php echo $result['QNo'];?>'/>                                                                      
                    <br/> 

                <input type="hidden" id="offset" value='<?php echo $i+1; ?>' />
                    <button id='next<?php echo $i;?>' class='next btn btn-success' type='button'>Next</button>


                 </div>    

                   <?php  }

                     if($i<$rows){?>
                       <div id='question<?php echo $i;?>' class='cont'>

                    <p class='questions' id="qname<?php echo $i;?>"> <?php echo $i?>.<?php echo $result['Question'];?></p>
                    <input type="radio" value="A" id='radio1_<?php echo $result['QNo'];?>' name='<?php echo $result['QNo'];?>'/><?php echo $result['Option A'];?>
                   <br/>
                    <input type="radio" value="B" id='radio1_<?php echo $result['QNo'];?>' name='<?php echo  $result['QNo'];?>'/><?php echo $result['Option B'];?>
                    <br/>
                    <input type="radio" value="C" id='radio1_<?php echo $result['QNo'];?>' name='<?php echo $result['QNo'];?>'/><?php echo $result['Option C'];?>
                    <br/>
                    <input type="radio" value="D" id='radio1_<?php echo $result['QNo'];?>' name='<?php echo $result['QNo'];?>'/><?php echo $result['Option D'];?>
                    <br/>
                    <input type="radio" checked='checked' style='display:none' value="5" id='radio1_<?php echo $result['QNo'];?>' name='<?php echo $result['QNo'];?>'/>                                                                      
                    <br/>                    
                    <button id='pre<?php echo $i;?>' class='previous btn btn-success' type='button'>Previous</button> 

                    <input type="hidden" id="offset" value='<?php echo $i+1; ?>' /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
                     &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;

                    <button id='next<?php echo $i;?>' class='next btn btn-success' type='button'>Next</button>


                 </div>    

                   <?php  }elseif($i==$rows){?>
                     <div id='question<?php echo $i;?>' class='cont'>
                    <p class='questions' id="qname<?php echo $i;?>"> <?php echo $i?>.<?php echo $result['Question'];?></p>
                    <input type="radio" value="A" id='radio1_<?php echo $result['QNo'];?>' name='<?php echo  $result['QNo'];?>'/><?php echo $result['Option A'];?>
                   <br/>
                    <input type="radio" value="B" id='radio1_<?php echo $result['QNo'];?>' name='<?php echo  $result['QNo'];?>'/><?php echo $result['Option B'];?>
                    <br/>
                    <input type="radio" value="C" id='radio1_<?php echo $result['QNo'];?>' name='<?php echo  $result['QNo'];?>'/><?php echo $result['Option C'];?>
                    <br/>
                    <input type="radio" value="D" id='radio1_<?php echo $result['QNo'];?>' name='<?php echo  $result['QNo'];?>'/><?php echo $result['Option D'];?>
                    <br/>
                    <input type="radio" checked='checked' style='display:none' value="5" id='radio1_<?php echo $result['QNo'];?>' name='<?php echo $result['QNo'];?>'/>                                                                      
                    <br/>              
                    <button id='next<?php echo $i;?>' class='next btn btn-success' type='submit'>Finish</button>
                    </div>
          <?php } $i++;  $_SESSION['Questions']['']= $result;

                    ;
                      } 
          ?>

1 个答案:

答案 0 :(得分:1)

在此页面中将会话保存为json

$_SESSION['Questions'] = json_encode(mysql_fetch_assoc($res));
页面中的

解码json

$questions = json_decode($_SESSION['Questions']);

注意:尝试使用mysqli或PDO不推荐使用您正在使用的语法,并且将从未来的php版本中删除