-2

我有这段代码可以让我获得一些 id

$sql_id_att="SELECT DISTINCT att_id FROM agenzia_pdv WHERE id_ag='$id_ag'";
$resultuserid_att=mysql_query($sql_id_att) or die(mysql_error());
while ($rows = mysql_fetch_array($resultuserid_att, MYSQL_ASSOC)) {

    $id_att=$rows['att_id'];
    echo $id_att;

}

而这个我用来做 foreach 功能

foreach ($id_att as $attivita_id) {

    ?>
<form action="lista_attivita_ag_modifica.php?&id=<?php echo $attivita_id ; ?>" method="post" enctype="multipart/form-data">
 <input type="hidden" name="form_secret" id="form_secret" value="<?php echo $_SESSION['FORM_SECRET'];?>" />
<input type="submit" name="edit" value="<?php echo $row['attivita_da_promuovere']; ?>" />
</form>

<?php
    }

我在这里做错了什么?它说:为 foreach 提供的参数无效但是当我打印 $id_att 它工作正常!谢谢

我有这两个数组:

 $attivita_name[]=$rows['attivita_da_promuovere'
 $id_att[]=$rows['att_id'];

我如何使用 foreach 打印它们的内容,我的意思是我需要打印:

$attivita_name[0]| $id_att[0]
$attivita_name[1]| $id_att[1]
$attivita_name[2]| $id_att[2]
4

1 回答 1

4

你需要制作$id_att为数组

$sql_id_att="SELECT DISTINCT att_id FROM agenzia_pdv WHERE id_ag='$id_ag'";
$resultuserid_att=mysql_query($sql_id_att) or die(mysql_error());

$id_att = array();
$attivita_name = array();
while ($rows = mysql_fetch_array($resultuserid_att, MYSQL_ASSOC)) {
    $attivita_name[]=$rows['attivita_da_promuovere'];
    $id_att[]=$rows['att_id'];
    echo $rows['att_id'];
}

// then you can iterate $id_att using foreach loop here
$result_str = "";
for($i=0 ; $i < count($id_att) ; $i++) {
    $result_str .= $attivita_name[$i] . "|" . $id_att[$i] . "\n";
}
echo $result_str;
于 2012-09-25T08:01:34.557 回答