所以我的问题有点令人困惑。我不是一个非常强大的程序员 我希望这是有道理的。这个网站是别人的工作,所以我想加入它。
我正在尝试创建一个从数据库中提取结果的下拉框。如果有什么不对劲,请告诉我。除了一个空白的下拉框,我似乎无法得到任何结果。
(aps2_get_user_role($_SESSION['uid']) == APS_ADMIN) {
$return .= '<br/><select>';
$selvalue .= 1001;
$result5 .= @mysql_query("SELECT * FROM aps2_users WHERE role = '1001'");
while($urow = @mysql_fetch_array($result5, MYSQL_ARRAY)){
$return .= '<option value="test">test</option>';
$usrid .= $urow['uid'];
$usrname .= $urow['username'];
$return .= '<option value="' . $usrid . '">"' . $usrname . '"</option>';
}
$return .= '</select>';
$return .= $result5;
}
答案 0 :(得分:1)
我想你想要:
(aps2_get_user_role($_SESSION['uid']) == APS_ADMIN) {
$return = '<br/><select>';
$result5 = @mysql_query("SELECT * FROM aps2_users WHERE role = '1001'");
while($urow = @mysql_fetch_array($result5, MYSQL_ARRAY)){
$return .= '<option value="test">test</option><option value="'.$urow['uid'].'">"'.$urow['username'].'"</option>';
}
return ($return.'</select>');
}
但是 - 我不知道你要用第1行实现什么目标!
您将返回result5,这是您的代码中的查询数组,我看不到您想要的。还有赋值与附加到变量。 你也不要在任何地方使用$ selvalue变量。
如果没有结果 - 请确保表格中存在您从数据库中提取的字段。
也值得将包含此结果的代码发布到您的HTML页面中。
答案 1 :(得分:1)
我在上面的代码中注意到了一些你应该纠正的事情
$selvalue .= 1001;
我还没有看到使用此变量@
之前@mysql_query()
不是一个好习惯,为什么只是一个
if else查看查询执行是否成功或抛出错误$result5 .=@mysql_query(...)
无需连接
执行查询结果@mysql_fetch_array($result5, MYSQL_ARRAY)
删除@
,看看是否可以
抛出错误$return .= '<option value="test">test</option>';
这是真的
在查询的每次迭代中都需要此选项吗?$usrid .= $urow['uid']; $usrname .= $urow['username'];
循环的迭代,新值将与其连接
前一个我相信你不需要那种类型的输出
选择框$return .= $result5;
为什么结果
mysql_query
附加了没有使用此选项的选项Please, don't use
mysql_*
functions in new code。它们不再被维护and are officially deprecated。请参阅red box?转而了解prepared statements,并使用PDO或MySQLi - this article将帮助您确定哪个。如果您选择PDO here is a good tutorial。
答案 2 :(得分:0)
这可能有助于您尝试这样做
<?php
mysql_connect('hostname', 'username', 'password');
mysql_select_db('database-name');
$sql = "SELECT PcID FROM PC";
$result = mysql_query($sql);
echo "<select name='PcID'>";
while ($row = mysql_fetch_array($result)) {
echo "<option value='" . $row['PcID'] . "'>" . $row['PcID'] . "</option>";
}
echo "</select>";
?>