日期:2014-05-17  浏览次数:20599 次

求助:从数据库中查询的请求失败?
新手,第一次做新闻发布,在新闻浏览界面的时候出现了问题
以下是在网上看到的一种写法
PHP code

include "connect.php"; 
$id=$_GET["id"];
$query="SELECT * from news Where id=".$id;
$result=mysql_query($query,$conn);
$row=mysql_fetch_array($result);



报错是 Warning: mysql_fetch_array() expects parameter 1 to be resource

其实我对这个写法中得变量id不甚理解,为什么新定义的一个变量能拿来和数据库表中的id比较呢?
怎样改这个错误呢?
谢谢~~

------解决方案--------------------
加一行, echo mysql_error();
估计八成是news表不存在怎的
------解决方案--------------------
1.跟楼上说的一样,mysql_error()看一下

2.$id变量是用来接收页面通过get传递的值,你的网页地址应该是:http://xxx.com?id=1,这里id值1就是要获取的值,通过这个id值跟数据表对比来获得新闻列表

3.你可以把connect.php贴出来看一下

------解决方案--------------------
你把你的sql在mysql编辑器调式看看,你的代码应该没什么问题。就是不知道你连接数据库的代码是否有毛病。
------解决方案--------------------
其实楼主已经说的很清楚了
探讨
其实我对这个写法中得变量id不甚理解,为什么新定义的一个变量能拿来和数据库表中的id比较呢?
怎样改这个错误呢?

------解决方案--------------------
探讨

1.跟楼上说的一样,mysql_error()看一下

2.$id变量是用来接收页面通过get传递的值,你的网页地址应该是:http://xxx.com?id=1,这里id值1就是要获取的值,通过这个id值跟数据表对比来获得新闻列表

3.你可以把connect.php贴出来看一下

------解决方案--------------------
友情提醒下...在正式的开发工作中,如果对传入的参数不进行正确性检查的话....后果将是毁灭性的...
$_GET 和 $_POST获得的原始数据,不能直接拼接在sql中...必须进行正确性检查,这是常识...
------解决方案--------------------
探讨

友情提醒下...在正式的开发工作中,如果对传入的参数不进行正确性检查的话....后果将是毁灭性的...
$_GET 和 $_POST获得的原始数据,不能直接拼接在sql中...必须进行正确性检查,这是常识...