Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/251.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 为什么mysqli_fetch_数组正在分离数组?_Php - Fatal编程技术网

Php 为什么mysqli_fetch_数组正在分离数组?

Php 为什么mysqli_fetch_数组正在分离数组?,php,Php,我正在从MySQL数据库中检索值,并将它们填充到单选按钮中,供用户选择。这些问题被包装在一个div中,并动态填充。出于某种原因,它填充了所有与问题相关的答案,但第二个到第四个答案似乎与第一个答案分开,只有第一个问题有一个中断,知道这是什么原因吗?以下是生成我正在执行的操作的代码: // Connect to the Database require_once('mysqli_connect.php'); //create the query for the question $q = "SEL

我正在从MySQL数据库中检索值,并将它们填充到单选按钮中,供用户选择。这些问题被包装在一个div中,并动态填充。出于某种原因,它填充了所有与问题相关的答案,但第二个到第四个答案似乎与第一个答案分开,只有第一个问题有一个中断,知道这是什么原因吗?以下是生成我正在执行的操作的代码:

// 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` FROM tbl_Answer WHERE QuestionID = 1";


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

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

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



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

while($row2 = mysqli_fetch_array($r2,MYSQLI_ASSOC)){
echo '<input name="q1" type="radio"value="'.$AnswerStatusID.'"/>' . $row2['Answer'] . '</div><br/>';
}
//连接到数据库
require_once('mysqli_connect.php');
//为问题创建查询
$q=“从问题ID=1的tbl\U问题中选择“问题”;
//为答案创建查询
$q2=“从tbl_答案中选择‘答案’、‘答案状态ID’”,其中问题ID=1”;
//运行查询
$r=mysqli\u查询($conn,$q);
//运行答案查询
$r2=mysqli_查询($conn,$q2);
//将应答器状态ID分配给var
$AnswerStatusID[]=$row2['AnswerStatusID'];
而($row=mysqli\u fetch\u数组($r,mysqli\u ASSOC)){
回显“1)”。$row['Question']。

; } 而($row2=mysqli\u fetch\u数组($r2,mysqli\u ASSOC)){ 回显'.$row2['Answer'].
'; }
好,问题在于问题回显中的开始div和回答回显中的结束div标记。我在问答部分关闭了div,并在答案部分添加了一个开始的div标记,这就清除了答案的疯狂样式和分隔

我会先检查您的SQL语句。请记住,返回的行可能没有按您想要的方式排序。很难说问题和答案是如何构造的,但是如果您可以查看SQL“order_by”,您可能能够快速解决许多问题。你能包括这实际输出的内容吗?从你的描述我不太明白。另外,如果只有一个条目,您真的需要一个while循环来打印问题吗?最终会有不止一个问题,但是,我需要在继续之前正确地生成这些问题@andrewsi我会试着拍一张截图,然后发帖谢谢你;在这种情况下,您需要查看您的逻辑-您需要将答案的
while
循环放在一个循环中,以打印出问题。我有一个屏幕截图,可以尝试帮助您查看正在创建的输出,但无法将其发布到我可以看到的此处