1

这是我的一段代码:

$a=mysql_query("SELECT denumire_intrebare,denumire_varianta,tip_intrebare 
                FROM intrebari,variante 
                WHERE intrebari.cod_chestionar='".$_SESSION['cod']."' 
                AND intrebari.cod_intrebare=variante.cod_intrebare");

while($b=mysql_fetch_array($a))    
if($b['tip_intrebare']==3)    
{    
echo $b['denumire_intrebare'];
echo "<br>";
echo "<input type='checkbox' name='option1' value='Milk'>";
echo $b['denumire_varianta'];
echo "<br>";
}

所以让我解释一下。我查询数据库,它给我带来了一个问题和与之相关的答案。我希望答案将它们作为复选框答案。问题是我的问题正在重复所有答案。因此,如果我有 5 个答案,那么问题会像这样出现 5 次:问题 answer1,问题 answer2,...。我希望我的问题只出现一次,并带有问题下的答案。我错过了一些东西,但我不知道是什么。有什么帮助吗?

4

1 回答 1

2

用 all 制作一个数组$b['denumire_varianta']并在 while 完成后使用 a foreach(),还制作你的 checkboxes 数组,以便以后可以获取它们:

$variante = array();
while($b=mysql_fetch_array($a)) {
    if($b['tip_intrebare']==3){
        $intrebare = $b['denumire_intrebare'];
        $variante[] = $b['denumire_varianta'];
    }
}
echo $intrebare."<br />";
foreach($variante as $varianta){
    echo "<input type='checkbox' name='option[]' value='".$varianta."'>";
    echo $varianta."<br />";
}
于 2012-09-19T11:31:51.190 回答