2015-02-12 4 views
-1

Обновление Моя страница не вытаскивает информацию из формы по какой-либо причине, она хочет, чтобы все поля были пустыми, хотя если она проверена, она должна изменить значение QuestionOptionId. Я хочу, чтобы это было, когда вы проверяете переключатель, это сохраняет значение для сеанса, поэтому оно может быть представлено позже, как викторина. По какой-то причине мой код обыкновение изменить значение или даже получить значение QuestionOptionIdPhp не работает в форме

код ниже

<?php 
session_start(); 
//check if the user is already logged in. 
if (!isset($_SESSION['username'])) { 
    header('Location: login.php'); 
} 
$QuestionOptionId = ""; 
//get value from post data and store into session 
if (isset($_POST['QuestionOptionId'])){ 
    $_SESSION['QuestionOptionId'] = $_POST['QuestionOptionId']; 
} 
//get back from session 
if (isset($_SESSION['QuestionOptionId'])){ 
    $QuestionOptionId = $_SESSION['QuestionOptionId']; 
} 
print $_SESSION['username']; 
?> 

<?php 
$con=mysqli_connect("localhost","root","root","root") or die(); 
       //execute query 
       $query ="SELECT UserId from user where username = '".$_SESSION['username']."'";  
       $result=mysqli_query($con, $query); 
       $UserId=$result->num_rows; 

while ($row = $result->fetch_assoc()) { 

    echo $row['UserId']; 
    $UserId=$row['UserId'];//etc... 
} 

?> 

<body> 
    <header> 
     <p class="text-center"> 
      Welcome :<?php echo $_SESSION['username']; 
          echo $UserId; 
        ?> 
       </p> 
       <?php 
         $query="SELECT * from testview"; 
         $res=mysqli_query($con, $query); 
         $rows=$res->num_rows; 
          $i=1; 
         while($result=mysqli_fetch_array($res)) 
       {?> 
        <?php if($i==1){?> 
        <div id='question<?php echo $i;?>' class='cont'> 
        <form name="QuestionTime"Method="post" action="push.php"> 
        <p class='questions' id="qtext<?php echo $i;?>"> <?php echo $i?>.<?php echo $result['QuestionText'];?></p> 
        <input <?php if ($QuestionOptionId=='3'){ echo 'checked="checked"';} ?>type="radio" value="1" id='radio1_<?php echo $result['QuestionOptionId'];?>'name="1"/> 

        <?php 
        $query="SELECT OptionChoiceName FROM testview WHERE OptionChoiceId=3"; 
         $res=mysqli_query($con, $query); 
         $rows=$res; 
          $i=1; 
          while($result=mysqli_fetch_array($res)) 

       echo $result['OptionChoiceName'];?> 

        <input <?php if ($QuestionOptionId=='4'){ echo 'checked="checked"';} ?> type="radio" value="2"id='radio1_<?php echo $result['QuestionId'];?>'name="1"/> 
        <?php 

        $query="SELECT OptionChoiceName FROM testview WHERE OptionChoiceId=4"; 
         $res=mysqli_query($con, $query); 
         $rows=$res; 
          $i=1; 

          while($result=mysqli_fetch_array($res)) 

       echo $result['OptionChoiceName']; 

       ?> 

<br><br>Selected Value: <?php echo $QuestionOptionId; ?> 

        <br/> 

        <?php 

        $_SESSION['UserId']=$UserId; 
        ?> 

       <button id='next<?php echo $i;?>' class='next btn btn-success' type='submit'>Finish</button> 
       </div> 
        <?php } $i++;} ?> 
        </form> 
        </div> 
        </div> 

        </header></header> 

любая помощь будет гранд благодаря

+0

вы можете продлить на этот ответ, пожалуйста – alba2015

ответ

0

Вы не fethcing QuestionOptionId & QuestionId. Попробуйте с этим запросом -

SELECT OptionChoiceName, QuestionOptionId, QuestionId FROM testview WHERE OptionChoiceId=3 

Это должно быть -

if(isset($_SESSION['QuesitonOptionId'])) 
{ 
    $QuestionOptionId= $_SESSION['QuesitonOptionId']; 
} 
+0

я все еще получаю те же ошибки, к сожалению :( я думаю, что его что-то делать с формой введите, как при его отображении как php im, получая что-то вроде этого типа = «radio» value = «4» name = «1» /> False вместо этого показывает радиокнопку – alba2015

+0

Я обновил свой вопрос Любой ответ на этот вопрос? – alba2015

Смежные вопросы