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的值…
在线等…
大有给力啊…
展开
 我来答
陈君小狼
2011-04-05 · 超过51用户采纳过TA的回答
知道小有建树答主
回答量:128
采纳率:0%
帮助的人:160万
展开全部
可以把ID值写入cookie。然后接受表单的页面读取cookie值。这样可以基本满足你不能修改ID值的愿望。
index.php在打开的时候,自动读取ID数据并写入cookie操作。
get.php收到从index.php接收过来的请求,先检查用户电脑上cookie是否存在,并检查cookie的ID值。匹配则处理请求,不匹配则拒绝。

一般来说,普通网友是无法更改cookie值,除了喜欢研究和分析系统的家伙使用工具修改cooke的传值。。
maxlwc
2011-04-05 · 超过50用户采纳过TA的回答
知道小有建树答主
回答量:85
采纳率:0%
帮助的人:150万
展开全部
这个很简单的,在页面中加入下面一段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值不是你想要的,再进行对应的处理。
希望能帮到你。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hydonlee
2011-04-05 · TA获得超过590个赞
知道小有建树答主
回答量:859
采纳率:0%
帮助的人:437万
展开全部
貌似这个是没有办法的。因为用户有输入URL的权利(HTTP GET协议)。
你页面上的他当然不会修改,但是在访问时他可以输入其它值的。。。

所以,你能做的,就是要做好值的长度检查、类型检查与异常处理。
毕竟,这是最常用的SQL注入的来源。

请参考:SQL注入
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
liver1123
2011-04-05 · TA获得超过4637个赞
知道大有可为答主
回答量:2484
采纳率:100%
帮助的人:1766万
展开全部
在页面里面检查传入的id值,如果不是合法的值拒绝跳转。
没有办法控制用户的修改,但可以控制是否让他继续访问。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
JiaNa008
2011-04-08
知道答主
回答量:3
采纳率:0%
帮助的人:0
展开全部
你可以做个判断。
恩,比如用is_numeric你可以云查下手册,这个是用来判断是否为数字的!

id(is_numeric[传进来的值]) {
...
}else{
exit();
}

用这种样的方法试!
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式