我一直在尝试根据empid
输出我的数据库字段,但我不知道。它给了我这个错误..
警告:mysql_fetch_array()要求参数1为资源,第16行的C:_webhost \ Apache24 \ htdocs \ eis \ usercp.inc.php中给出布尔值
<?php
$firstname = getuserfield('txtFname');
$lastname = getuserfield('txtLname');
echo 'Hello '.$firstname.' '.$lastname.'.';
$empid = getuserfield('empid');
$query = "SELECT type_of_leave,specific_reason,date_from,date_to,num_of_days FROM `hrf_leave` WHERE `empid` = '$empid' AND `formStatus` = 0";
$query_run = mysql_query($query);
echo "<table border=1>
<tr>
<th>Type of Leave</th>
<th>Specific Reason</th>
<th>Date From</th>
<th>Date To</th>
<th>Number of Days</th>
</tr>";
while($record = mysql_fetch_array($query_run)){ // line 16
echo "<tr>";
echo "<td>" . $record['type_of_leave'] . "</td>";
echo "<td>" . $record['specific_reason'] . "</td>";
echo "<td>" . $record['date_from'] . "</td>";
echo "<td>" . $record['date_to'] . "</td>";
echo "<td>" . $record['num_of_days'] . "</td>";
echo "</tr>";
}
echo "</table>";
?>
答案 0 :(得分:1)
由于您的sql语句false
无效,因此从mysql_query()
传递了布尔$query
。因此mysql_fetch_array()
会返回上述错误。
请尝试$query
,如果这是我希望的语法错误,它将解决。
$query= SELECT * FROM hrf_leave WHERE empid = '$empid' AND formStatus = 0";
答案 1 :(得分:0)
看到可能有两件事: -
建议:在使用mysql_fetch_array之前,请使用mysql_num_rows检查是否从查询中返回任何行。
注意:正在折旧mysql_ *函数。所以避免他们
答案 2 :(得分:0)
在你做任何事之前,请尽量不要使用mysql_函数,不再支持它 你可以使用pdo。 Bellow是如何使用pdo连接到datadabase,你必须学习如何查询pdo gud luck。 的getMessage(); } ?&GT;