- PHP code
$query=mysql_query("select * from user where id={$_POST['id']}"); while($result=mysql_fetch_array($query)){ echo $result['name']; }
这是一段简单的php查询程序。现在有一个问题,就是如果$_POST['id']在表里找不到,即 mysql_query()查找不到结果。
页面是没有显示结果,但是用FF抓包的时候,会响应错误如下:
mysql_fetch_array(): supplied argument is not a valid MySQL result resource in ./././ line xx
我现在不想让他报错,想在程序中加个判断。应该如何加?
我尝试了if($query) if($query != false) if(mysql_num_rows($query)<1) if(mysql_fetch_array($query))
都没有用。
mysql_query 如果查询不到,会返回指针还是false?
这个判断应该怎么写啊?大家帮个忙。谢谢了……
------解决方案--------------------
你先var_dump(mysql_fetch_array($query)))看看,返回的是什么,你不就知道了
------解决方案--------------------
不应该像你说的
当mysql_query()查询到匹配的结果时,返回的是一个 resource类型的结果集
当没有匹配的结果时,返回的也是 resource类型的结果集
当查询出错的时候返回false
------解决方案--------------------
那么就是你a.php的原因了。
不妨把代码贴出来, 顺带把mysql.php也贴出来吧
------解决方案--------------------
不会的。
如果有错误,多半是你的$_POST['id']没有取到值。否则不会报错误的..
------解决方案--------------------
你就不用post的的方法,直接用get运行mysql.php,同一个id看看结果是什么
------解决方案--------------------
对于 $query=mysql_query("select * from user where id={$_POST['id']}");
若 $_POST['id'] 不存在,或为空,则 SQL 指令为
select * from user where id=
若 $_POST['id'] 是非数字量,他已说“故意把查询的某个值弄错了”则 SQL 指令为
select * from user where id=xxx
xxx为字符串
则必然产生查询错误!
出现错误会有文本类型的错误信息,ff居然要通过抓包才能看见,这个ff应该抛弃了
------解决方案--------------------
哥们想必你用的是火狐吧!你清下换春看看啊了。
------解决方案--------------------
直接输出sql看看
相关文章推荐
• PHP网站常见一些安全漏洞及防御方法• PHP与C#的值类型指向区别_PHP教程• PHP操作数组的一些函数整理介绍_php技巧• PHP5.0对象模型探索之抽象方法和抽象类_php基础• thinkphp框架下实现登录、注册、找回密码功能_PHP独孤九贱(3)_JavaScript视频教程
javascript是运行在浏览器上的脚本语言,连续多年,被评为全球最受欢迎的编程语言。是前端开发必备三大法器中,最具杀伤力。如果前端开发是降龙十八掌,好么javascript就是第18掌:亢龙有悔。没有它,你的前端生涯是不完整的。《php.cn独孤九贱(3)-JavaScript视频教程》课程特色:php中文网原创幽默段子系列课程,以恶搞,段子为主题风格的php视频教程!轻松的教学风格,简短的教学模式,让同学们在不知不觉中,学会了javascript知识。
JavaScript教程140904次播放
独孤九贱(6)_jQuery视频教程
jQuery是一个快速、简洁的JavaScript框架。设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档操作、事件处理、动画设计和Ajax交互。 核心特性可以总结为:具有独特的链式语法和短小清晰的多功能接口;具有高效灵活的css选择器,并且可对CSS选择器进行扩展;拥有便捷的插件扩展机制和丰富的插件。兼容各种主流浏览器,如IE 6.0+、FF 1.5+、Safari 2.0+、Opera 9.0+等,是全球最流行的前端开发框架之一。PHP中文网根据最新版本,独家录制jQuery最新视频教程,回馈PHP中文网的新老用户。
jQuery教程115739次播放
jQuery与Ajax基础与实战
jQuery是最流行的JS函数库,封装了许多实用的功能,其中最引人入胜的就是Ajax。 jQuery中的Ajax操作,语法简单,操作方便,使Ajax从未如此轻松,前端人员从此不再为与服务器异步交互而发愁,本套课程,精选了最常用的几个方法,从基本的语法到每个参数,再到具体实例进行了全面的讲解。
AJAX教程15400次播放
Git教程(60分钟全程无废话版)
Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。 Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。 Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持
JavaScript教程13556次播放