2016-09-23 37 views
0

試圖在網頁上選擇問題並做出回答,以便從數據庫中檢索問題數據。 的JS對象中的無功看起來是這樣的:如何將變量動態回顯爲js對象

var questions = [{ 
 
     question: "What is 2*5?", 
 
     choices: [2, 5, 10, 15, 20], 
 
     correctAnswer: 2 
 
    },...

雖然我可以讓這些有問題的只有一個固定的數字,我想使它更有活力。

這就是我現在寫的:

<script type="text/javascript"> 
 
    var questions = [ 
 
      <?php 
 
      include "functions/connect.php"; 
 
      $selqq="select * from quiz_question where QUIZ_ID=2"; 
 
      $runqq=mysqli_query($con,$selqq); 
 
      while($rowqq=$runqq->fetch_array()) 
 
      {  
 
       echo "{ question: '".$rowqq['QUESTION']."', 
 
       choices: [".$rowqq['CHOICE0'].",".$rowqq['CHOICE1'].",".$rowqq['CHOICE2'].",".$rowqq['CHOICE3']."], 
 
       correctAnswer: ".$rowqq['ANSWER']."},"; 
 
      } 
 
      ?>]; 
 
</script>

這並沒有爲我工作的,也許是因爲「」接近尾聲,並將其放置在一開始會照着做。 我該怎麼做才能讓我可以在數組中放置儘可能多的對象?可能嗎?

+0

['json_encode()'](https://php.net/manual/en/function.json-encode.php) – Andreas

回答

0

改變喜歡你的腳本代碼這個

<script type="text/javascript"> 
     var questions = 
     <?php 
     $data = null; 
     $i = 0; 
     include "functions/connect.php"; 
     $selqq="select * from quiz_question where QUIZ_ID=2"; 
     $runqq=mysqli_query($con,$selqq); 
     while($rowqq=$runqq->fetch_array()) 
     {  
      $data[$i]['question'] = $rowqq['QUESTION']; 
      $data[$i]['choices'] = $rowqq['CHOICE0'].$rowqq['CHOICE1'].$rowqq['CHOICE2'].$rowqq['CHOICE3']; 
      $data[$i]['correctAnswer'] = $rowqq['ANSWER']; 
      $i++; 
     } 
     echo json_encode($data); 
     ?> 
    </script>