我无法中断while循环。
<?php $quizsections = mysql_query("SELECT * FROM quiz_sections");
while($quizsectionsrslt = mysql_fetch_array($quizsections)){
$quizsectionsid = $quizsectionsrslt['id'];
$quizsectionsheading = $quizsectionsrslt['heading'];
$quizsectionsquizid = $quizsectionsrslt['quizid'];
$quizsectionsfirstslot = $quizsectionsrslt['firstslot'];
echo $quizsectionsheading."<br />";
$quizslots = mysql_query("SELECT * FROM quiz_slots WHERE `quizid`=$quizsectionsquizid");
while($quizslotsrslt = mysql_fetch_array($quizslots)){
$quizslotids = $quizslotsrslt['questionid'];
$questions = mysql_query("SELECT * FROM question WHERE `id`=$quizslotids");
while($questionsrslt = mysql_fetch_array($questions)){
echo $questiontext = $questionsrslt['id']."<br />";
}
}
}?>--它显示的输出类似于
Aptitude
1 2 3.40
Arithmetic
1 2 3. 40
Reasoning
1 2 3. 40
Computers
1 2 3. 40
但是我想要的输出
Aptitude
1 2 3. 10
Arithmetic
11 12 13 . 25
Reasoning
26 27 28 . 30
Computers
31 32 33 . 40
表结构



发布于 2015-07-01 13:26:44
您将希望对MySQL查询使用限制来根据第一个插槽更改输出。
<?php $quizsections = mysql_query("SELECT * FROM quiz_sections");
while($quizsectionsrslt = mysql_fetch_array($quizsections)){
$quizsectionsid = $quizsectionsrslt['id'];
$quizsectionsheading = $quizsectionsrslt['heading'];
$quizsectionsquizid = $quizsectionsrslt['quizid'];
$quizsectionsfirstslot = $quizsectionsrslt['firstslot'];
echo $quizsectionsheading."<br />";
$quizslots = mysql_query("SELECT * FROM quiz_slots WHERE `quizid`=$quizsectionsquizid LIMIT ".($quizsectionsfirstslot-1).", 10");
while($quizslotsrslt = mysql_fetch_array($quizslots)){
$quizslotids = $quizslotsrslt['questionid'];
$questions = mysql_query("SELECT * FROM question WHERE `id`=$quizslotids");
while($questionsrslt = mysql_fetch_array($questions)){
echo $questiontext = $questionsrslt['id']."<br />";
}
}
}?>发布于 2015-07-01 10:45:51
可以通过添加以下内容来停止执行循环:
break;在你想要停止的线路上
https://stackoverflow.com/questions/31158988
复制相似问题