php获取用户下拉列表

时间:2011-04-06 13:13:21

标签: php drop-down-menu

如何为每个用户选择下拉列表。

user table
------------
id    job
1     1
2     2

job table
----------
id   name
1    Doctor
2    Sales

$q = $db->query("SELECT * FROM affiliate LEFT JOIN user ON user.job = affiliate.id_affiliate");
        while($r = $q->fetch_array()) :
            if($r['id_user'] == $_SESSION['id_user'] && $r['job'] == $r['id_affiliate']) {
                echo '<option selected value="'.$r['id_affiliate'].'">'.$r['org'].'</option>'; 
            } else {
                echo '<option value="'.$r['id_affiliate'].'">'.$r['org'].'</option>'; 
            }
        endwhile;

2 个答案:

答案 0 :(得分:0)

如何修改以下内容......

if( ($r['id_user'] == $_SESSION['id_user']) && ($r['job'] == $r['id_affiliate']) )

不确定是否重要,但我在选项结束时selected

<option value='cat' selected>

答案 1 :(得分:0)

selected="selected"selected通常应该有效。如果不是,你的if语句有问题。一种简单的方法是回显出if语句的内容,如下所示:

请注意!回声通常应该在select open标签之外完成,只需将以下内容粘贴到select open标签之外,但是在查询之后。

 while($r = $q->fetch_array()) :
        echo $r['id_user'] .'=='. $_SESSION['id_user'] .'&&'. $r['job'] .'== '.$r['id_affiliate'].'<br />';
 endwhile;

您现在可以检查这些值是否实际匹配。如果没有,那就有你的问题。