1. php简单的登陆验证用户名和密码怎么写
给你个实例参考一下php编写登陆验证用户名和密码吧。
登录页面
login.html 负责收集用户填写的登录信息
在CODE上查看代码片派生到我的代码片
<html>
<head>用户登录</head>
<form name="LoginForm" method="post" action="login.php" onSubmit="return InputCheck(this)">
<p>
<label for="username" class="label">用户名:</label>
<input id="username" name="username" type="text" class="input" />
<p/>
<p>
<label for="password" class="label">密 码:</label>
<input id="password" name="password" type="password" class="input" />
<p/>
<p>
<input type="submit" name="submit" value=" 确 定 " class="left" />
</p>
</form>
</html>
登录处理
login.PHP 负责处理用户登录与退出动作。
在CODE上查看代码片派生到我的代码片
<?php
//登录
if(!isset($_POST['submit'])){
exit('非法访问!');
}
$username = htmlspecialchars($_POST['username']);
$password = MD5($_POST['password']);
//包含数据库连接文件
include('conn.php');
//检测用户名及密码是否正确
$check_query = mysql_query("select userid from user_list where username='$username' and password='$password' limit 1");
if($result = mysql_fetch_array($check_query)){
//登录成功
session_start();
$_SESSION['username'] = $username;
$_SESSION['userid'] = $result['userid'];
echo $username,' 欢迎你!进入 <a href="my.php">用户中心</a><br />';
echo '点击此处 <a href="login.php?action=logout">注销</a> 登录!<br />';
exit;
} else {
exit('登录失败!点击此处 <a href="javascript:history.back(-1);">返回</a> 重试');
}
//注销登录
if($_GET['action'] == "logout"){
unset($_SESSION['userid']);
unset($_SESSION['username']);
echo '注销登录成功!点击此处 <a href="login.html">登录</a>';
exit;
}
?>
用户中心
my.php 是用户中心,作为用户登录检测。
在CODE上查看代码片派生到我的代码片
<?php
session_start();
//检测是否登录,若没登录则转向登录界面
if(!isset($_SESSION['userid'])){
header("Location:login.html");
exit();
}
//包含数据库连接文件
include('conn.php');
$userid = $_SESSION['userid'];
$username = $_SESSION['username'];
$user_query = mysql_query("select * from user_list where userid = '$userid' limit 1");
$row = mysql_fetch_array($user_query);
echo '用户信息:<br />';
echo '用户ID:',$userid,'<br />';
echo '用户名:',$username,'<br />';
echo '<a href="login.php?action=logout">注销</a> 登录<br />';
?>
conn.php,用于连接数据库
在CODE上查看代码片派生到我的代码片
<?php
$conn = mysql_connect("127.0.0.1","root","") or die("数据库链接错误".mysql_error());
mysql_select_db("info_db",$conn) or die("数据库访问错误".mysql_error());
mysql_query("set names gb2312");
?>
2. php 验证问题
你用的PHP几?
$PHP_AUTH_USER 这变量能得到么?
这种超全局变量不是早就改成$_SERVER['PHP_AUTH_USER']这样了么?
把所有的 $PHP_AUTH_USER 改成 $_SERVER['PHP_AUTH_USER']
$PHP_AUTH_PW 改成 $_SERVER['PHP_AUTH_PW']
试试
我晕啊,还不够详细啊~~~
CTRL+H 查找替换不会?
3. php正则验证。
$result=preg_replace("/[^:]*s*:s*([^:]*)/","$1","DomainName:QIGOU12.COM");
echo$result." ";
4. php验证问题
@$password=$_Post['password'];
改为
@$password=$_POST['password'];
试试。
5. php 一验证方面的
提交方式判断是有用的,可以知道是直接输入的地址呢,还是提交了数据。许多脚本为了减少文件,<FORM ACTION=$PHP_SELF METHOD=POST>是提交到自身的。
6. PHP中用户登录验证
这个太简单了。
function check($userid){
$sql="select * from usertable where id=$userid";
$rl=mysql_query($sql);
$num=mysql_num_rows($rl);
if($num){
用户存在,要执行的代码
}
}
7. 如何使用PHP实现身份证是否合法的验证
functionis_idcard($id)
{
$id=strtoupper($id);
$regx="/(^d{15}$)|(^d{17}([0-9]|X)$)/";
$arr_split=array();
if(!preg_match($regx,$id))
{
returnFALSE;
}
if(15==strlen($id))//检查15位
{
$regx="/^(d{6})+(d{2})+(d{2})+(d{2})+(d{3})$/";
@preg_match($regx,$id,$arr_split);
//检查生日日期是否正确
$dtm_birth="19".$arr_split[2].'/'.$arr_split[3].'/'.$arr_split[4];
if(!strtotime($dtm_birth))
{
returnFALSE;
}else{
returnTRUE;
}
}
else//检查18位
{
$regx="/^(d{6})+(d{4})+(d{2})+(d{2})+(d{3})([0-9]|X)$/";
@preg_match($regx,$id,$arr_split);
$dtm_birth=$arr_split[2].'/'.$arr_split[3].'/'.$arr_split[4];
if(!strtotime($dtm_birth))//检查生日日期是否正确
{
returnFALSE;
}
else
{
//检验18位身份证的校验码是否正确。
//校验位按照ISO7064:1983.MOD11-2的规定生成,X可以认为是数字10。
$arr_int=array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2);
$arr_ch=array('1','0','X','9','8','7','6','5','4','3','2');
$sign=0;
for($i=0;$i<17;$i++)
{
$b=(int)$id{$i};
$w=$arr_int[$i];
$sign+=$b*$w;
}
$n=$sign%11;
$val_num=$arr_ch[$n];
if($val_num!=substr($id,17,1))
{
returnFALSE;
}//phpfensi.com
else
{
returnTRUE;
}
}
}
}
8. 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>";
}
}
9. php 注册验证
mysql_query()函数是不返回结果集的,只返回SQL语句是否成功执行,所以会一直提示用户存在的,应该用mysql_fetch_array