如何为每个用户选择下拉列表。
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;
答案 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;
您现在可以检查这些值是否实际匹配。如果没有,那就有你的问题。