2012-07-06 83 views
1

我回调AnswerStatusID和AnswerResponse的结果,并且需要将它们应用于变量以进行比较,以查看给出的答案是正确还是不正确以及相应的响应回答,我的问题是,我的变量只填充表中的最后一行,而不是填充所有的数据。变量数组仅填充mysql表的最后一行

// Connect to the Database 
require_once('mysqli_connect.php'); 

//create the query for the question 
$q = "SELECT `Question` FROM tbl_Question WHERE QuestionID = 1"; 

//Create the query for the Answers 
$q2 = "SELECT `Answer`,`AnswerStatusID`,`AnswerResponse` FROM tbl_Answer WHERE QuestionID = 1"; 


//Run the query 
$r = mysqli_query($conn,$q); 

//run the answer query 
$r2 = mysqli_query($conn,$q2); 


while($row = mysqli_fetch_array($r,MYSQLI_ASSOC)){ 
echo '<div id="Question1"><p>1) ' . $row['Question'] . '</div></p>'; 
} 



while($row2 = mysqli_fetch_array($r2,MYSQLI_ASSOC)){ 
echo '<div id="Question1"><input name="q1" type="radio" value="'.$AnswerStatusID.'"/>' . $row2['Answer'] . '</div><br/>'; 

//Assign the AnswerStatusID to a var 
$AnswerStatusID = $row2['AnswerStatusID']; 

//Assign the AnswerResponse to a var 
$AnswerResponse = $row2['AnswerResponse']; 
} 
+0

那么,你想'$ AnswerStatusID'和'$ AnswerResponse'是所有StatusIDs和响应的阵列? – Wiseguy 2012-07-06 14:42:30

+0

您的变量正在设置为所有行,但由于您使用的是缩放器,除最后一个以外,所有行都会被覆盖。 – TerryE 2012-07-06 14:44:19

+0

@Wiseguy是的,这正是我想要的 – 2012-07-06 14:49:59

回答

2

正如Wiseguy所暗示的,它看起来像你想要的AnswerStatusID和AnswerResponse作为数组。

这里有两个步骤。首先将它们声明为数组。

$AnswerResponse = array(); 
$AnswerStatusID = array(); 

然后值存储在他们每个人的

while($row2 = mysqli_fetch_array($r2,MYSQLI_ASSOC)){ 
    echo '<div id="Question1"><input name="q1" type="radio" value="'.$AnswerStatusID.'"/>' . $row2['Answer'] . '</div><br/>'; 

    //Assign the AnswerStatusID to a var 
    $AnswerStatusID[] = $row2['AnswerStatusID']; 

    //Assign the AnswerResponse to a var 
    $AnswerResponse[] = $row2['AnswerResponse']; 
} 

然后你可以看到什么是在使用的var_dump阵列();

var_dump($AnswerResponse) 

print_r($AnswerResponse) 
+0

我试过了,当我回应它看到的结果,并确保变量填充回声是“阵列”,而不是任何数据 – 2012-07-06 14:51:25

+0

回声'

'$ AnswerResponse。 '

'; echo'

'。$ AnswerStatusID。 '

'; – 2012-07-06 14:53:15

+0

这是一件好事!您可以使用var_dump($ AnswerResponse)或echo print_r($ AnswerResponse)来查看数组中的内容。 – 2012-07-06 14:54:17