【发布时间】:2009-10-22 09:36:44
【问题描述】:
我使用查询字符串来访问我的页面。如果有人手动键入未知查询字符串,我会尝试使其重定向到某个地方..
例如:
网址:test.php?m=1(这是一个有效的网址) test.php?m=1324234 (这不是一个有效的 url ) test.php?m=1asdaa(这不是一个有效的 url)
include("config/database.inc");
$qm=$_GET['m'];
$query = "select acc from test where acc=$qm";
$numresults=mysql_query($query);
$numrows=mysql_num_rows($numresults);
if ($numrows == 0){
header("Location: index.php");
exit;
}
在数据库中我有两行,LINE 1: acc=1;第 2 行:acc=2;
如果我输入网址:test.php?m=12312431,然后重定向到 index.php 'coz $numrows=0.没关系。 但是如果我输入:test.php?m=1sdfsfsf,然后我得到这个错误消息: 警告:mysql_num_rows():提供的参数不是有效的 MySQL 结果资源。
我该怎么做?需要在从数据库查询之前检查 $_GET['m'] 吗?
谢谢。
【问题讨论】: