【发布时间】:2011-08-28 07:44:50
【问题描述】:
可能重复:
mysql_fetch_array() expects parameter 1 to be resource, boolean given in select
我厌倦了看到这个错误消息任何人请帮助我; 它是一个简单的 php mysql 搜索引擎; 其中搜索元素为“adm_no”;
mY代码如下
<?php
require_once("lib/connection.php");
require_once("lib/functions.php");
$adm_no=$_POST['adm_no'];
//if (!$adm_no==ctype_digit) echo "You Entered wrong Admission no Recheack Admission no" ; exit();
$clas=$_POST['clas'];
$query="SELECT * FROM $clas WHERE adm_no = $adm_no";
$result = mysql_query($query);
//searchs the query in db.
while($result = mysql_fetch_array( $result))
{
echo $result['adm_no'];
echo " ";
echo $result['adm_dt'];
echo "";
echo $result['name'];
echo "";
echo $result['dob'];
echo " ";
echo $result['f_name'];
echo " ";
echo $result['f_office'];
echo " ";
echo $result['f_o_no'];
echo " ";
echo $result['m_name'];
echo " ";
echo $result['m_office'];
echo " ";
echo $result['addr'];
echo " ";
} ;
我得到的错误是
Warning: mysql_fetch_array() expects parameter 1 to be resource, array given in C:\wamp\www\st_db_1\search_db.php on line 10
我要出去了,但伴随着这个消息
【问题讨论】:
-
我们已经厌倦了编写易受 sql 注入攻击的代码的人。
-
这真是糟糕的代码。此代码中的 SQL 注入漏洞无法通过使用
mysql_real_escape_string()修复,因为您将表名注入到查询中,请参阅:stackoverflow.com/questions/332365/… 然后阅读此问题:stackoverflow.com/questions/5811834/…