复选框在php中显示为动态

时间:2012-09-19 11:27:53

标签: php html

这是我的代码:

$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次:问题回答1,问题回答2,....我希望我的问题只能在问题的答案下出现一次。我错过了什么,但我不知道是什么。有什么帮助吗?

1 个答案:

答案 0 :(得分:2)

创建一个包含所有$b['denumire_varianta']的数组,并在while完成后使用foreach(),同时创建复选框数组,以便之后可以获取它们:

$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 />";
}