1. php登录cookie验证,怎么绕过
<?php
//cookie实现自动登录
error_reporting(0);//关闭错误报告(浏览页面出现notice可用此法消除)
$user=$_POST['username'];
$pwd=$_POST['password'];
if($user!=''&&$pwd!=''){
if($_POST['remmber']==1){
header("Location:http://localhost/homework/login.php");
//转到登录页面
}
setcookie("username",$user,time()+600);//time()+600指600秒后cookie失效
setcookie("password",$pwd,time()+600);
}
?>
<html>
<head>
<title>login</title>
</head>
<body>
<divid="wrapper">
<formname="login-form"class="login-form"action="login.php"method="post">
<divclass="header">
<h1>LoginForm</h1>
</div>
<divclass="content">
<inputname="username"type="text"class="inputusername"value="<?phpecho$_COOKIE["username"];?>"/>
<inputname="password"type="password"class="inputpassword"value="<?phpecho$_COOKIE["password"];?>"/>
</div>
<divclass="footer">
<inputtype="submit"name="submit"value="Login"class="button"/>
</div>
</form>
</div>
</body>
</html>
<?php
if(isset($_POST["username"])){//isset()判断是否为空,不空才执行,0就是空
$username=$_POST["username"];
$password=$_POST["password"];
//$submit=$_POST["submit"];
$con=mysql_connect("localhost","root","root");
if(!$con){
die("dbconnectioniswrong:".mysql_errno());
}
mysql_select_db("db_admin",$con);//进行输入验证
$sql1="select*fromregisterwherename='".$username."'";
$str=mysql_query($sql1);
mysql_close($con);
$buffer_account="";
$buffer_pwd="";
while($user=mysql_fetch_array($str)){
$buffer_account=$user['name'];
$buffer_pwd=$user['pwd'];
}
$value1=strcmp($username,$buffer_account);
$value2=strcmp($password,$buffer_pwd);
if($value1==0&&$value2==0){
echo"<script>window.location.href='http://localhost/homework/singers.php'</script>";
}
else{
echo"<script>alert('youarewrong');window.location.href='http://localhost/homework/login.php'</script>";
}
}
?>
<?php
$con=mysql_connect("localhost","root","root");
if(!$con){
die("dbconnectioniswrong:".mysql_errno());
}
mysql_select_db("db_admin",$con);
//把数据库里面查询的数据保存到文件里面
$sql="select*fromregister";
$result=mysql_query($sql);
$data="";
while($row=mysql_fetch_row($result)){
foreach($rowas$v){
$data.=$v;
}
}
file_put_contents("abc.txt",$data);
?>
2. PHP 用户发表文章的验证与过滤
php里有这个magic_quotes_gpc模块
自动转义
这个模块打开了之后 进入数据库的值都会进行一下过滤 存在注入危险的符号会被转义
php里还有其他的一些字符串安全过滤的函数
addslashes(string)等
也可以去找找网上的安全过滤的例子
3. php中如何过滤用户的输入麻烦告诉我
可以采用以下复几点措施。
(制1)在用户数据进入数据库之前使用addslashes()函数过滤,可以进行一些字符的转义,并过滤掉可能引起数据库问题的字符。可以使用stripslashes()将数据返回到原始形式。
(2)在php.infi中开启magic_quotes_gpc和magic_quotes_runtime指令。它们可以自动的添加和过滤斜杠,前者主要用于格式化GET,POST,和cookie变量,后者用于过滤进出数据库的数据。
(3)当在system()或者exex()函数中使用用户输入数据作为参数时,必须使用escapeshellcmd()。用来避免怀有恶意的用户强迫系统运行某些命令。
(4)可以使用stip_tags()从一个字符串中去掉HTML和PHP标记,这样可以避免用户将恶意节本植入到用户的数据中。
(5)可以使用htmlspecialchars(),可以将字符专程它们的HTML等价实体。例如,<将被转换成< ,该函数可以将任何脚本转换成无害的字符。
总之,在使用用户的数据时,一定要小心,原则即是不要相信用户输入的任何数据,必须要进行过滤和转换。
4. 求php防止被sql 注入攻击的过滤用户输入内容的函数
functionclean($v){
//判断magic_quotes_gpc是否为打开
if(!get_magic_quotes_gpc()){
//进行magic_quotes_gpc没有打开的情况对提交数据的过滤
$v=addslashes($v);
}
//把'_'过滤掉回
$v=str_replace("_","\_",$v);
//把'%'过滤掉
$v=str_replace("%","\%",$v);
//把'*'过滤掉
$v=str_replace("*","*",$v);
//回车转换答
$v=nl2br($v);
//html标记转换
$v=htmlspecialchars($v);
return$v;
}
如果需要,还可以屏蔽一下危险字符,例如insert, update, delete等
//将update去掉
$v=str_replace("update","",$v);
最后,在拼装sql语句时,用户输入的东西,全括在单引号内
5. php网页的密码验证绕过求助(简单代码)
初步判断,密码为yixiwangmengsicengjian
原理
if($LoginPassword!=''){ 表示$LoginPassword不能为空
而$LoginPassword 的值来自于$LoginPassword=$UserList[$LoginUser];
而$UserList这个数组只有一个元素, admin
那$UserList[$LoginUser] 只能是$UserList['admin'];
而很明显$UserList['admin'] 的值就是 yixiwangmengsicengjian
表单方面, 一个输入框, 一个密码框, 输入框的name属性是User 密码框的name属性是 Password
6. PHP如何去掉输入验证码
你发的这些代码,只是验证码生成页面!
要去掉验证码验证, 那就要在登陆逻辑处理页面对验证码的验证进行取消, 而不是这里的代码!
7. PHP登陆验证
if($_POST["user_name"]==""){
echo"请输入用户名";
echo"<ahref='denglu.php'>返回</a>";
}elseif($_POST["parsword"==""]){
echo"请输入密码";
echo"<ahref='denglu.php'>返回</a>";
}else{
$link=mysql_connect("localhost","root","")ordie("不能连接数据库");
mysql_select_db("userdb",$link)ordie("选择错误");
$sql="select*fromuser_dbWHEREuser_name='".addslashes($_POST['user_name'])."'";
/*
*$sql="select*fromuser_dbWHEREuser_name='$_POST['user_name']}'ANDparsword='{$_POST['parsword']}'";
*这样写有漏洞。如果对方传入的用户名密码都为['or'1'='1]就会出现漏洞
*/
$result=mysql_query($sql,$link);
$news=mysql_fetch_assoc($result);
mysql_free_result($result);
if($news&&$news['parsword']==$_POST['parsword']){
echo"登陆成功";
echo"<ahref='index.php'>登陆</a>";
}else{
echo"密码错误或用户名不正确";
echo"<ahref='denglu.php'>返回</a>";
}
}
8. php如何验证过滤用户是否登录
一、可以通过Session,实现用户登录验证。
session习惯上被译为会话,它的设计是为了在一个访问期间在不同的页面间传输数据,以解决http协议无状态的问题。
session_register()函数的作用是注册新的变量,它会在全局变量中增加1个变量到目前的session之中,以后其他页面可以通过session_is_registered()函数检测该session变量是否已经注册。
二、通过session来检测用户登录信息,由两个文件组成,login.php为用户登录页面,checklogin.php用于检测账号、密码和是否登录成功。
具体参考代码如下:
login.php的代码如下:
<?php
session_start();//初始化session
if(isset($_SESSION['shili']))
{
header("Location:shili.php");//重新定向到其他页面
exit();
}
?>
<scriptlanguage="javascript">
functionchecklogin(){
if((login.username.value!="")&&(login.password.value!=""))
{
returntrue;//判断用户名和密码不为空,返回TRUE
}
else
{
alert("昵称或密码不能为空!")
}
}
</script>
<styletype="text/css">
.style1{font-size:13px;font-family:"黑体";font-weight:normal;color:#0099FF;}
</style>
<divalign="center">
<formname="login"method="post"action="checklogin.php"onSubmit="returnchecklogin()">
<tablewidth="260"border="1"bgcolor="#D8EFFA">
<tralign="center">
<tdheight="30"colspan="2"><spanclass="style1">管理系统登录</span></td>
</tr>
<tr>
<tdwidth="90"align="center"class="style1">管理员:</td>
<tdwidth="170"height="20"align="left"valign="middle"><inputname="username"type="text"id="username"size="20"></td>
</tr>
<tr>
<tdalign="center"class="style1">密码:</td>
<tdheight="20"align="left"valign="middle"><inputname="password"type="password"id="password"size="20"></td>
</tr>
<tr>
<tdalign="center"class="style1"></td>
<tdheight="20"align="center"><inputtype="submit"name="Submit"value="登录"></td>
</tr>
</table>
</form>
</div>
checklogin.php的代码如下:
<?php
session_start();//初始session
if(isset($_SESSION['shili']))
{
header("Location:shili.php");//重新定向到其他页面
exit;
}//登录过的话立即结束
$shili_name=$_POST['username'];//获取参数
$password=$_POST['password'];
//验证管理员名称和密码是否正确,这里采用直接验证,没有连接数据库
if($shili_name=="mr"and$password=="mrsoft")
{
session_register("shili");//注册新的变量,保存当前会话的昵称
$shili=$shili_name;
echo"<fontcolor=red>登录成功!</font>";
header("Location:shili.php");//登录成功重定向到管理页面
}
else
{
echo"<tablewidth='100%'align=center><tr><tdalign=center>";
echo"账号或密码错误,或者不是管理员账号<br>";
echo"<fontcolor=red>登录失败!</font><br><ahref='login.php'>请重新输入</a>";
echo"</td></tr></table>";
}
?>
shili.php的代码如下:(实验简单验证)
<?php
echo"WelcometoMyWorld!";
?>
//如果想要对某个页面限制浏览的用户,可以使用同样的方式,只要把如下的代码放在该页面的开头即可:
<?php
session_start();
if(!isset($_SESSION['shili'])){
echo"<palign=center>";
echo"<fontcolor=#ff0000size=5><strong><big>";
echo"你没有登录,请<ahref='denglu.php'>登录</a>!";
echo"</big></strong></font></p>";
exit();
}
?>
9. PHP后台管理登入页面拦截 防止地址栏输入访问
登录验证一般是用cookie的,当然用session也可以。
原理很简单:
1.登录页面获得表单并验证是否正确。正确则进入系统,并设置cookie;错误则继续登录。
2.系统内的所有页面都要验证是否有指定的cookie。如果有说明是登录成功的,正常显示;如果没有说明是通过地址跳转的,强制跳转到登录页面。
3.关于验证cookie的代码。由于每个页面都要做相同的处理,这是代码重用问题,建议放父类中(不一定是基类,继承可以是多层次的)。
10. php如何实现登录过滤,最好可以过滤掉整个文件夹
什么??????????????