php驗證密碼
Ⅰ php中驗證賬號密碼的代碼
<?php
session_start();
if($_POST['name']&&$_POST['pass'])
{
$name=$_POST['name']; //接受傳遞值
$pass=$_POST['pass'];
}
else
{
echo '用戶名或密碼不能為空';//當然也可以進行其他操作,比如使用header('Location:error.php')來把用戶重定向到一個錯誤提示頁
exit;
}
include_once('mysql_connect.php');//連接資料庫
$name=mysql_real_escape_string($name); //過濾信息
$pass=mysql_real_escape_string($pass);
$sql='select username,userpass from userdata where username="$name"';//從資料庫中取出用戶信息
$r=mysql_query($sql);
if(mysql_num_rows==0)
{
echo '用戶名不存在';
exit;
}
else
{
$row=mysql_fetch_assoc($r);
if($pass!=$row['userpass'])
{
echo '用戶密碼錯誤';
exit;
}
esle
{
$_SESSION['user']=$name; //創建SESSION
}
}
?>
Ⅱ PHP密碼驗證跳轉
web.php //判斷sessionuid是否為空,為空萴跳入密碼輸入頁。
<?php
session_start();
if (empty($_SESSION['uid'])){
header("location:pass.php");
exit;
}
?>
pass.php
<html>
<body>
<form action="index.php" method="post">
<input type=password name=password></input>
<input type=submit value="提交"></input>
</form>
</body>
</html>
index.php //先判斷密是否為1,如果是,則賦值sessionuid為1,如果不是,則跳回至pass.php
<?php
$passrord=$_post['password'];
session_start();
if ($password=='1'){
echo '歡迎你,';
$_SESSION['uid']='1';
}
if (empty($_SESSION['uid'])){
header("location:pass.php");
exit;
}
?>
Ⅲ 關於PHP正則密碼驗證
這不關編碼的事。比如你的密碼表單為<input name="pwd" />那: <?php preg_match('/^[_\w]+$/',$_POST['pwd'],$match); if(empty($match))die('密碼不能亂來!明白?');?>
Ⅳ php網頁的密碼驗證繞過求助(簡單代碼)
初步判斷,密碼為yixiwangmengsicengjian
原理
if($LoginPassword!=''){ 表示$LoginPassword不能為空
而$LoginPassword 的值來自於$LoginPassword=$UserList[$LoginUser];
而$UserList這個數組只有一個元素, admin
那$UserList[$LoginUser] 只能是$UserList['admin'];
而很明顯$UserList['admin'] 的值就是 yixiwangmengsicengjian
表單方面, 一個輸入框, 一個密碼框, 輸入框的name屬性是User 密碼框的name屬性是 Password
Ⅳ PHP怎麼判斷兩次密碼是否正確
先根據UserId從資料庫查出對應的密碼
if(舊的密碼==原來userid在資料庫中留存的密碼){
新的密碼保存語句,一般是update
}else{
return 舊密碼不正確
}
Ⅵ 求教PHP驗證用戶名或密碼包含非法字元
例子代碼:
$user="sdafdsg";
if(preg_match("/^[0-9a-zA-Z]{4,21}$/",$user)){
echo"OK";
}
下面是PHP官方對preg_match函數的介紹
preg_match
(PHP 4, PHP 5)
preg_match—執行一個正則表達式匹配
說明
intpreg_match(string$pattern,string$subject[,array&$matches[,int$flags= 0[,int$offset= 0]]] )
搜索subject與pattern給定的正則表達式的一個匹配.
參數
pattern
要搜索的模式,字元串類型。
subject
輸入字元串。
matches
如果提供了參數matches,它將被填充為搜索結果。$matches[0]將包含完整模式匹配到的文本,$matches[1]將包含第一個捕獲子組匹配到的文本,以此類推。
flags
flags可以被設置為以下標記值:
PREG_OFFSET_CAPTURE
如果傳遞了這個標記,對於每一個出現的匹配返回時會附加字元串偏移量(相對於目標字元串的)。 注意:這會改變填充到matches參數的數組,使其每個元素成為一個由 第0個元素是匹配到的字元串,第1個元素是該匹配字元串 在目標字元串subject中的偏移量。
offset
通常,搜索從目標字元串的開始位置開始。可選參數offset用於 指定從目標字元串的某個未知開始搜索(單位是位元組)。
Note:
使用offset參數不同於向preg_match()傳遞按照位置通過substr($subject, $offset)截取目標字元串結果, 因為pattern可以包含斷言比如^,$或者(?<=x)。 比較:
<?php
$subject="abcdef";
$pattern='/^def/';
preg_match($pattern,$subject,$matches,PREG_OFFSET_CAPTURE,3);
print_r($matches);
?>
以上常式會輸出:
Array
(
)
當這個示例使用截取後傳遞時
<?php
$subject="abcdef";
$pattern='/^def/';
preg_match($pattern,substr($subject,3),$matches,PREG_OFFSET_CAPTURE);
print_r($matches);
?>
將會產生匹配
Array
(
[0] => Array
(
[0] => def
[1] => 0
)
)
返回值
preg_match()返回pattern的匹配次數。 它的值將是0次(不匹配)或1次,因為preg_match()在第一次匹配後 將會停止搜索。preg_match_all()不同於此,它會一直搜索subject直到到達結尾。 如果發生錯誤preg_match()返回FALSE。
更新日誌
版本
說明
5.3.6 如果offset比subject的長度還要大則返回FALSE。
5.2.2 命名子組可以接受(?<name>),(?'name')以及(?P<name>)語法。之前版本僅接受(?P<name>)語法。
4.3.3 增加了參數offset.
4.3.0 增加了標記PREG_OFFSET_CAPTURE。
4.3.0 增加了參數flags。
範例
Example #1 查找文本字元串"php"
<?php
//模式分隔符後的"i"標記這是一個大小寫不敏感的搜索
if(preg_match("/php/i",".")){
echo"Amatchwasfound.";
}else{
echo"Amatchwasnotfound.";
}
?>
Ⅶ 需要一個PHP正則表達式來驗證密碼,不知道限制大小寫怎麼寫了,求教一下.
$str='你要輸入的密碼';
$model='/[A-Z]+[a-z]+.*/'; //最少要包含一個或者多個大寫或者小寫,和0個或則多個任意字元;
$modelength='/.{8,}/'; //輸入的最少為8位
if(!preg_match($modelength,'aaa')){
echo '密碼不能少於8位';
}
if(!preg_match($model,$str)){
echo '密碼必須包含大小寫';
}
也可以這樣寫
$str="Aaaa!";
$model='/[A-Z]+[a-z]+.*/'; //最少要包含一個或者多個大寫或者小寫,和0個或則多個任意字元;
$modelength='/.{8,}/'; //輸入的最少為8位
if(!preg_match($model,$str)||strlen($str)<8){
echo '密碼需要包含大小寫,或者密碼長度小於8位';
}
Ⅷ php:用戶名和密碼驗證,請問代碼哪裡有問題
if($tijiao=="提交")
{
$nameuser=$_POST['user'];
$namepsw=$_POST['psw'];
if($nameuser==""||$namepsw=="")
{
echo "用戶名和密碼不能為空!!!";
}
else if($nameuser="admin"||$namepsw="admin")
{
echo "正在驗證密碼";
}else{
echo "用戶名與密碼不匹配";
}
}
接受post數據要用 $_POST['參數名']
get數據是 $_GET['參數名']
Ⅸ 怎樣給HTML/PHP網頁增加密碼驗證
很簡單 密碼為123456 你可以在login.php裡面改
index.html 將以下代碼放入 <body></body>裡面就可以
<form method="post" action="login.php">
密碼: <input type="password" name="password"/><br>
<input type="submit" name="submit" value="登陸">
</form>
login.php 完整的login.php內容
<?php
$password = isset($_POST['password']) ? $_POST['password'] : '';
if($password == '123456'){
echo "<script>alert('登陸成功。');location.href='in.html';</script>";
//不需要提示 則把 alert('登陸成功。'); 刪除掉
}else{
echo "<script>alert('密碼錯誤 登陸失敗。。');location.href='error.html';</script>";
//不需要提示 則去掉 同上
}
?>
OK 了 簡單吧。
Ⅹ 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");
?>