Php 下拉字段将不会填充
长时间侦听器,第一次调用 我试图从其他张贴的例子中学习,但它似乎不适合我。 使用我找到的示例,我试图创建一个4层级联下拉菜单。我的问题是菜单无法填充。我收到以下错误: PHP警告:mysql_fetch_array()希望参数1是resource,布尔值在第36行的/home/mstarks/public_html/TEST/STUFF/ddmenu.PHP中给出 PHP警告:mysql_fetch_array()希望参数1是resource,布尔值在第44行的/home/mstarks/public_html/TEST/STUFF/ddmenu.PHP中给出 使用PhPAdmin,所有查询都可以正常运行 代码如下:Php 下拉字段将不会填充,php,drop-down-menu,Php,Drop Down Menu,长时间侦听器,第一次调用 我试图从其他张贴的例子中学习,但它似乎不适合我。 使用我找到的示例,我试图创建一个4层级联下拉菜单。我的问题是菜单无法填充。我收到以下错误: PHP警告:mysql_fetch_array()希望参数1是resource,布尔值在第36行的/home/mstarks/public_html/TEST/STUFF/ddmenu.PHP中给出 PHP警告:mysql_fetch_array()希望参数1是resource,布尔值在第44行的/home/mstarks/pub
<script language=JavaScript>
function reload(form)
{
var selected_value=form.man.options[form.man.options.selectedIndex].value;
self.location='ddmenu.php?man=' + selected_value ;
}
</script>
<?php
@$man=$HTTP_GET_VARS['man'];
if(strlen($man) > 0 and !is_numeric($man))
{
echo "INVALID DATA.";
exit;
}
$divisions_query=mysql_query("SELECT DISTINCT division, division_id FROM employees_division ORDER BY division_id");
if(isset($man) and strlen($man) > 0)
{
$bureaus_query=mysql_query("SELECT DISTINCT bureau FROM employees_bureau WHERE division_id=$man ORDER BY bureau_id");
}
else
{
$bureaus_query=mysql_query("SELECT DISTINCT bureau FROM employees_bureau ORDER BY bureau_id");
}
echo "<form method=post name=f1 action='ddmenu2.php'>";
echo "<select name='man' onchange=\"reload(this.form)\"><option value=''>Select Division</option>";
while($qresult_divisions=mysql_fetch_array($divisions_query))
{
if($qresult_divisions['division_id']==@$man){echo "<option selected value='$qresult_divisions[division_id]'>$qresult_divisions[division]</option>"."<BR>";}
else{echo "<option value='$qresult_divisions[division_id]'>$qresult_divisions[division]</option>";}
}
echo "</select>";
echo "<select name='mod'><option value=''>Select Bureau</option>";
while($qresult_bureaus=mysql_fetch_array($bureaus_query))
{
echo "<option value='$qresult_bureaus[bureau]'>$qresult_bureaus[bureau]</option>";
}
echo "</select>";
echo "<input type=submit value=Submit>";
echo "</form>";
?>
函数重载(表单)
{
var selected_value=form.man.options[form.man.options.selectedIndex].value;
self.location='ddmenu.php?man='+所选值;
}
mysql\u查询
失败并返回FALSE。这将导致$divisions\u查询
变量设置为FALSE
,而不是预期的数组。您得到的错误是因为mysql\u fetch\u array()
需要一个数组,而不是FALSE
。尝试使用这样的check语句
<?php
$result = mysql_query('SELECT * WHERE 1=1');
if (!$result) {
die('Invalid query: ' . mysql_error());
}
?>
有关更多信息,请访问:
祝你好运 什么是36
和44
?你真的应该切换到mysqli
,mysql已经过时了,你连接到mysql数据库了吗?正如上面所说的,看看MySQL,因为MySQL现在已经被弃用了。这些错误意味着DB没有返回结果,因此函数不能正常工作。运行SELECT
查询后,您应该echo
MySQL错误消息的内容,以帮助您找出没有得到结果的原因。此外,考虑使用MySqL**批函数。按@ CRACRTETAST,SELECT查询不返回任何内容。首先在数据库中运行相同的查询并更正它。然后继续这个代码。或者尝试使用mysql\u query($query)或die(mysql\u error())