所以标题是......
这里是我目前编写的代码,认为它可以工作,但它不会:(
请注意我的会话用户ID等正在工作,因为我可以在表单中的另一个字段打印出来,这不是问题,但我的Dropbox似乎没有任何内容。 (我在数据库上创建了数据,其中user_id匹配我登录的位置)
$userid = $_SESSION['myuserid'];
//run query to database
$query = "SELECT * FROM test_groups_tb WHERE user_id='$userid'";
mysql_query($query) or die(mysql_error());
while($row = mysql_fetch_assoc($query))
{
$dd .= "<option value='{$row['group_id']}'>{$row['group_name']}</option>";
}
然后在html中使用:
<select name="t_group"><? echo $dd; ?></select>
有人能帮助我吗?
感谢
答案 0 :(得分:3)
$query
是一个字符串,因此您无法从中获得任何结果。你应该做点什么:
$query = "SELECT * FROM test_groups_tb WHERE user_id='$userid'";
$result = mysql_query($query) or die(mysql_error());
while($row = mysql_fetch_assoc($result))
{
$dd .= "<option value='{$row['group_id']}'>{$row['group_name']}</option>";
}
答案 1 :(得分:2)
它不起作用,因为$ query是一个字符串。您应该将mysql_query
的结果分配给$ query变量。
如果您有错误报告,则会看到类似mysql_fetch_assoc expects parameter 1 to be resource, string given
的错误。
答案 2 :(得分:0)
就个人而言,当我添加变量时,我总是丢掉一个字符串..我知道你不必这样做取决于你的设置方式,但我的行将是:
$dd .= "<option value='".$row['group_id']."'>".$row['group_name']."</option>";
如果您关心这些事情,我还会在尝试添加之前设置$ dd =“”来摆脱不可避免的通知。
检查您的查询是否为资源(echo $ query - 期望'资源ID #nn')并且它正在生成任何行[echo mysql_num_rows($ query); ]