php网页后面的id=1值
要用什么办法才能不被别人改变网页后面的值?比如:localhost/index.php?id=1改过:localhost/index.php?id=0改过:localho...
要用什么办法才能不被别人改变网页后面的值?
比如:localhost/index.php?id=1
改过:localhost/index.php?id=0
改过:localhost/index.php?id=空
改过:localhost/index.php?id=adfasdf
要用什么办法还要网页保留在:localhost/index.php?id=1 这张页面上,不管别人怎么改动都好!
大家给个实例可以吗?
function inject_check($sql_str) {
return eregi('select|insert|update|delete|'|/*|*|../|./|union|into|load_file|outfile', $sql_str); // 进行过滤
}
function verify_id($id=null) {
if (!$id) { exit('没有提交参数!'); } // 是否为空判断
elseif (inject_check($id)) { exit('提交的参数非法!'); } // 注射判断
elseif (!is_numeric($id)) { exit('提交的参数非法!'); } // 数字判断
$id = intval($id); // 整型化
return $id;
}
/*
function str_check( $str ) {
if (!get_magic_quotes_gpc()) // 判断magic_quotes_gpc是否打开
{
$str = addslashes($str); // 进行过滤
}
$str = str_replace("_", "\_", $str); // 把 '_'过滤掉
$str = str_replace("%", "\%", $str); // 把' % '过滤掉
return $str;
}
在网上找了一个晚上… 找到这些不知道怎么使用…
话说,给个小例子教下可以吗?哪个能来判断id的值…
在线等…
大有给力啊… 展开
比如:localhost/index.php?id=1
改过:localhost/index.php?id=0
改过:localhost/index.php?id=空
改过:localhost/index.php?id=adfasdf
要用什么办法还要网页保留在:localhost/index.php?id=1 这张页面上,不管别人怎么改动都好!
大家给个实例可以吗?
function inject_check($sql_str) {
return eregi('select|insert|update|delete|'|/*|*|../|./|union|into|load_file|outfile', $sql_str); // 进行过滤
}
function verify_id($id=null) {
if (!$id) { exit('没有提交参数!'); } // 是否为空判断
elseif (inject_check($id)) { exit('提交的参数非法!'); } // 注射判断
elseif (!is_numeric($id)) { exit('提交的参数非法!'); } // 数字判断
$id = intval($id); // 整型化
return $id;
}
/*
function str_check( $str ) {
if (!get_magic_quotes_gpc()) // 判断magic_quotes_gpc是否打开
{
$str = addslashes($str); // 进行过滤
}
$str = str_replace("_", "\_", $str); // 把 '_'过滤掉
$str = str_replace("%", "\%", $str); // 把' % '过滤掉
return $str;
}
在网上找了一个晚上… 找到这些不知道怎么使用…
话说,给个小例子教下可以吗?哪个能来判断id的值…
在线等…
大有给力啊… 展开
5个回答
展开全部
这个很简单的,在页面中加入下面一段php:
if($_REQUEST['id'] != 1)
{
header("Location: http://localhost/index.php?id=1\n");
}
把这个代码放在你php页面最开头,试试。
意思就是判断页面传入的id值,如果不为1就跳转到http://localhost/index.php?id=1
整体思路就是:你可以在页面对id的值进行判断,$_REQUEST['id'] 可以获取到通过
get或者post方式传入的id值。如果传入的id值不是你想要的,再进行对应的处理。
希望能帮到你。
if($_REQUEST['id'] != 1)
{
header("Location: http://localhost/index.php?id=1\n");
}
把这个代码放在你php页面最开头,试试。
意思就是判断页面传入的id值,如果不为1就跳转到http://localhost/index.php?id=1
整体思路就是:你可以在页面对id的值进行判断,$_REQUEST['id'] 可以获取到通过
get或者post方式传入的id值。如果传入的id值不是你想要的,再进行对应的处理。
希望能帮到你。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
貌似这个是没有办法的。因为用户有输入URL的权利(HTTP GET协议)。
你页面上的他当然不会修改,但是在访问时他可以输入其它值的。。。
所以,你能做的,就是要做好值的长度检查、类型检查与异常处理。
毕竟,这是最常用的SQL注入的来源。
请参考:SQL注入
你页面上的他当然不会修改,但是在访问时他可以输入其它值的。。。
所以,你能做的,就是要做好值的长度检查、类型检查与异常处理。
毕竟,这是最常用的SQL注入的来源。
请参考:SQL注入
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在页面里面检查传入的id值,如果不是合法的值拒绝跳转。
没有办法控制用户的修改,但可以控制是否让他继续访问。
没有办法控制用户的修改,但可以控制是否让他继续访问。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你可以做个判断。
恩,比如用is_numeric你可以云查下手册,这个是用来判断是否为数字的!
id(is_numeric[传进来的值]) {
...
}else{
exit();
}
用这种样的方法试!
恩,比如用is_numeric你可以云查下手册,这个是用来判断是否为数字的!
id(is_numeric[传进来的值]) {
...
}else{
exit();
}
用这种样的方法试!
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询