2016-02-29 98 views
-4

上次我问,如果从我的代码中,我可以检查用户是否已经回答正确,有些对您说我的代码中不可能,但我想我找到了一个方法,但不知道如何把它写得更好。检查答案是否正确

我有一个表中的行PHP脚本

echo "<td>" . $row['question1'] . "</td>";

这个脚本使得有很多的答案表。我想,也许我可以让它差不多,就像

If answer === 'ēxample' echo <td class="greenback">" . $row['question1'] .  "</td>"; 

else 

<td class="redback">" . $row['question1'] . "</td>"; 

但我怎么能写它正确吗?

我对

If ($row === 'test') { echo <td class="greenback"> . $row['question1'] . "  } else { echo <td class="redback">" . $row['question1'] . 
} 

难道是正确的想法?

回答

0

我不介意我是否理解您的问题或没有,但我会给你我的建议:

if($answer == 'test') 
    echo $row['question1']; 
else 
    echo $row['question2']; 
+0

不,你没说清楚,对不起我的坏消息。我有一个html表单,它将数据存储在mysql数据库中,在这些行中,它将其保存,所以对于不同的问题有很多答案,我想知道,如果我可以检查答案,如果答案是正确的,它会使td与类,如果不是绿色背景,红色。 –

0

你为什么不使用单选按钮来显示respectives答案?

例如:

<?php 
     //do the mysqli connection 
     //suppose that table 
     //Questions('text_question', 'alternative_A', 'alternative_B', 'alternative_C', 'correct_answer') 


     $rows = $mysqli_query("SELECT * FROM questions"); 
     $row = $mysqli_fetch_assoc($rows); //all the info is inside that var 
?> 
<form method="POST"> 
    <?php echo $row['text_question'];?> 
    <input type="radio" name="ans" value="A"><?php echo $row['alternative_A'];?> 
    <input type="radio" name="ans" value="B"><?php echo $row['alternative_B'];?> 
    <input type="radio" name="ans" value="C"><?php echo $row['alternative_C'];?> 
    <input type="submit" value="Answer" /> 
</form> 

然后用$_POST['ans']

<?php 
    if($_POST['ans'] == $row['correct_ans']){ 
     //code when user choose correct ans 
    } 
    else{ 
     //wrong answer 
    } 
+0

因为我需要从数据库中获取数据,而不是从表单 –

+0

使用php获取数据!我会编辑我的答案,查看它! –

0
if($answer == 'test') 
    echo '<td class='green'>' . $row['question1'] . '<td>'; 
else 
    echo '<td class='red'>' . $row['question2'] . '<td>'; 

访问答案的价值试试这样。

+0

因此,代替$答案,如果应该把$行['question1'] –

+0

它给我带来了一个服务器错误,我尝试了页面 –