2016-02-29 99 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

它給我帶來了一個服務器錯誤,我嘗試了頁面 –