※ 引述《HwangTW (谷歌翻译王)》之铭言:
: 因公司接触到aspx,而我也发现这东西只要有最高权限的GUID(固定)
: 即使在无痕模式下也能直接登入
: PHP有没有办法可以防范这种GUID攻击方法(我想写的,与公司aspx无关)
: 例如在我的网站下以 index.php 为登入页面 (以 www.example.com 为例)
: 网站之下的分支都得登入后才能观看/操作的
: 即使直接输入 www.example.com/test/test.php
: 1. 未经授权存取
: 直接转到 www.example.com 待使用者输入帐号后
: 在某个 iframe 显示 www.example.com/test/test.php 的内容
: 2. 有授权存取
: 直接转到 www.example.com 并在某个 iframe 显示该内容
: 最后一个问题 cookie 该怎么写QQ
: 在此请教了
这是我A网页带POST过来的验证程式
<?php
$id=$_POST['id'];
$email=$_POST['email'];
$checkcode=$_POST['checkcode'];
if(strtolower($checkcode)!=strtolower($_SESSION['reg_num_check']))
{
echo '<meta http-equiv="content-type" content="text/html;
charset=utf-8"><script>alert("Validate Code Error");history.go(-1);</script>';
exit;
}
if($id!=''&&$email!=''){
$sql="SELECT id FROM `".$_SiteGLOBAL['dbtable']."`.`register` WHERE
id='".$id."' AND email='".$email."'";
$result=mysql_query($sql);
list($id)=mysql_fetch_row($result);
if(empty($id)){//查无资料
echo '<meta http-equiv="content-type" content="text/html;
charset=utf-8"><script>alert("ID or E-mail Error");history.go(-1);</script>';
exit;
}else{
$_SESSION['login_reg']=$id;//纪录session
header('location:../user.php');//到下一页
exit;
}
}else{
echo '<meta http-equiv="content-type" content="text/html;
charset=utf-8"><script>alert("ID or E-mail Error");history.go(-1);</script>';
exit;
}
?>
你先看懂GALINE大大在讲什么,在回头看我这段程式码
至于我这一段,简单的讲就是
叫使用者输入ID跟Email然后丢到数据库去查询
有查到就
$_SESSION['login_reg']=$id;//把查到的ID纪录成session
header('location:../user.php');//到下一页
exit;
没查到就
跳出错误讯息"ID or E-mail Error"