當前位置:首頁 » 編程語言 » php用戶驗證

php用戶驗證

發布時間: 2022-09-09 02:31:57

php中用戶注冊後的驗證問題.有些功能不會寫,比如:只有一個用戶名或密碼或資料庫中已有的用戶名不能注冊.

程序就像下面這位仁兄寫的一樣,我只說思路。

已經有的用戶當然不能讓他再次出來,不然下次登陸以誰的信息為准啊,

1:用戶輸入用戶姓名,

2:拿用戶輸入的姓名進入資料庫中查詢,

3:看資料庫中是否存在此用戶名,如果有,則提醒,此用戶名已經存在。如果沒有,則將用戶的信息寫入到資料庫中去。

唯一的密碼就沒有必要了,因為用戶的密碼可以是一樣的。

⑵ php 如何驗證用戶許可權

PHP同樣也是可以用SESSION或者COOKIE來判斷的,不過不能一下子判斷所有的頁面,你只能手動的在每個頁面上都做判斷。或者是單獨寫一個判斷的頁面然後用require()或者include()引入到其他頁面。

補充一下
每個頁都要加判斷

session_start();
if($_SESSION["abc"]==""){
echo "<script>alert('請先登錄');window.location.replace('登陸頁面')</script>";
}

⑶ 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");
?>

⑷ php中用戶登入和驗證碼驗證問題

我一般都用Zend,所以你的代碼沒有看太懂。只是淺淺的注意到裡面有一段代碼:
if (isset($_SESSION['PrevUrl']) && false) {
這里不出意外的話永遠會是false吧。
但好像問題也不再這里。讓我更沒有明白的是你的$_SESSION['yzm']是在這個腳本執行以前就被寫好的嗎?因為我在這個腳本里除了最後一個if裡面看到這個東西以外,就沒有看到了。

⑸ php驗證用戶名是否以字母開頭與驗證密碼只能為數字和字母的組合

驗證用戶名是否以字母開頭與驗證密碼只能為數字和字母的組合代碼
三款三種常用驗證函數 驗證郵箱地址格式 驗證密碼只能為數字和字母的組合 驗證用戶名是否以字母開頭代碼哦,這是用戶注冊時或提交表單時會用的哦。

function is_email($email)
{
if (preg_match("/[a-za-z0-9]+@[a-za-z0-9]+.[a-z]{2,4}/",$email,$mail))
{
return true;
}
else
{
return false;
}
} /**
* 驗證用戶名是否以字母開頭
*/

function is_user_name($user)
{
if (preg_match("/^[a-za-z]{1}([a-za-z0-9]|[._]){3,19}$/",$user,$username))
{
return true;
}
else
{
return false;
}
} /**
* 驗證密碼只能為數字和字母的組合
*/

function is_ps教程d($psd)
{
if (preg_match("/^(w){4,20}$/",$psd,$password))
{
return true;
}
else
{
return false;
}
}

⑹ php注冊的時候怎麼驗證用戶名是否存在

1<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""
002
003<head>
004<metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/>
005<metahttp-equiv="X-UA-Compatible"content="IE=EmulateIE7"/>
006<linkrel="stylesheet"type="text/css"href="css/int.css"/>
007<scripttype="text/javascript"src="js/func.js"></script>
008<styletype="text/css">
009td{
010height:30px;
011vertical-align:middle;
012align:center;
013}
014#myText{
015width:600px;
016}
017</style>
018<title>注冊頁面http://yige.org</title>
019</head>
020
021<body>
022
023<?php
024error_reporting(0);
025//不讓PHP報告有錯語發生。如果不關閉好有類似這的錯語Warning:preg_match()關閉就不出現了
026session_start();
027header("Cache-control:private");
028
029$conn=@mysql_connect("localhost","root","")ordie("資料庫連接錯誤");
030mysql_select_db("bbs",$conn);
031mysql_query("setnamesutf8");
032
033if($_POST['submit'])
034{
035$username=$_POST["username"];
036
037$sql="selectuserNamefromuser_infowhereuserName='$username'";
038//echo$sql;
039
040$query=mysql_query($sql);
041$rows=mysql_num_rows($query);
042if($rows>0){
043echo"<scripttype='text/javascript'>alert('用戶名已存在');location='javascript:history.back()';</script>";
044}else{
045$user_in="insertintouser_info(username,pass,sex,qq,email,img)values('$_POST[username]',md5('$_POST[pass]'),'$_POST[sex]','$_POST[qq]','$_POST[email]','$_POST[img_select]')";
046//echo$user_in;
047mysql_query($user_in);
048echo"<scripttype='text/javascript'>alert('寫入成功!!');location.href='login.php';</script>";
049
050}
051
052//javascript:history.go(-1)
053
054}
055?>
056
057
058<formaction="reg.php"name="reg_form"method="post"onsubmit="returncheck_reg()">
059<tablename="reg_table"align="left">
060<tr>
061<td>用戶:</td><td><inputid="username"name="username"class="myText"type="text"maxlength="12"/></td>
062</tr>
063
064<tr><!--性別:0保密1女2男-->
065<td>性別:</td>
066<td>女<inputtype="radio"value="1"name="sex"/>
067男<inputtype="radio"value="2"name="sex"/>
068保密<inputtype="radio"value="0"name="sex"checked/></td>
069</tr>
070
071<tr>
072<td>密碼:</td><td><inputname="pass"class="myText"type="password"onblur="check_len(this)"/><spanid="show_pass"style="color:red;"></span></td>
073</tr>
074
075<tr>
076<td>重復密碼:</td><td><inputname="repass"class="myText"type="password"onblur="check_pass(this)"/><spanid="show_repass"style="color:red;"></span></td>
077</tr>
078
079<tr>
080<td>QQ:</td><td><inputtype="text"class="myText"name="qq"onblur="check_qq(this)"/><spanstyle="color:red;"id="show_qq"></span></td>
081</tr>
082
083<tr>
084<td>郵箱:</td><td><inputtype="text"class="myText"name="email"onblur="check_email(this)"/><spanid="show_e"style="color:red;"></span></td>
085</tr>
086
087<tr>
088<tdheight="60">頭像:</td>
089<td>
090<selectname="img_select"onchange="img_change(this)">
091<optionvalue="101">女001</option>
092<optionvalue="102">女002</option>
093<optionvalue="103">女003</option>
094<optionvalue="104">女004</option>
095<optionvalue="105">男001</option>
096<optionvalue="106">男002</option>
097<optionvalue="107">男003</option>
098<optionvalue="108">男004</option>
099</select>
100<imgsrc="/bbs/img/101.gif"id="tx_change"style="width:50px;height:65px;"alt=""/>
101</td>
102</tr>
103
104<trheight="20"align="justify">
105<tdalign="right"><inputtype="submit"value="注冊"name="submit"style="margin-right:5px;"/></td>
106<td><inputtype="reset"value="重置"name="reset"style="margin-left:5px;"/></td>
107</tr>
108
109<tr>
110<tdcolspan="2">我已有賬號現在<ahref="login.php">登錄</a></td>
111</tr>
112
113</table>
114</form>
115</body>
116</html>
fun.js的代碼如下:

01//根據下拉框變換圖片
02functionimg_change(thisObj){
03varimgsrc="/bbs/img/"+thisObj.value+".gif";
04document.getElementById("tx_change").src=imgsrc;
05}
06
07//檢查是否都符合注冊要求
08functioncheck_reg()
09{
10if(check_len()&&check_pass()&&check_email()&&check_qq())
11{
12returntrue;
13}else{
14returnfalse;
15}
16}
17
18//檢查密碼長度不能少於6
19functioncheck_len(thisObj){
20if(thisObj.value.length==0)
21{
22document.getElementById('show_pass').innerHTML="密碼不能為空";
23returnfalse;
24}else{
25if(thisObj.value.length<6)
26{
27document.getElementById('show_pass').innerHTML="密碼長度不少於6";
28returnfalse;
29}
30document.getElementById('show_pass').innerHTML="";
31returntrue;
32}
33}
34
35//檢查倆次密碼輸入是否一致
36functioncheck_pass(thisObj){
37varpsw=document.getElementById('pass');
38if(psw.value.length==0)
39{
40document.getElementById('show_pass').innerHTML="密碼不能為空";
41returnfalse;
42}else{
43document.getElementById('show_pass').innerHTML="";
44
45if(thisObj.value!=psw.value)
46{
47document.getElementById('show_repass').innerHTML="兩次密碼輸入不正確";
48returnfalse;
49}
50document.getElementById('show_repass').innerHTML="";
51returntrue;
52}
53}
54
55//檢查email是否正確
56functioncheck_email(thisObj){
57varreg=/^([a-zA-Zd][a-zA-Z0-9_]+@[a-zA-Zd]+(.[a-zA-Zd]+)+)$/gi;
58varrzt=thisObj.value.match(reg);
59if(thisObj.value.length==0){
60document.getElementById('show_e').innerHTML="Email不能為空";
61returnfalse;
62}else{
63if(rzt==null)
64{
65document.getElementById('show_e').innerHTML="Email地址不正確";
66returnfalse;
67}
68document.getElementById('show_e').innerHTML="";
69returntrue;
70}
71
72}
73
74//檢查qq格式是否正確
75functioncheck_qq(thisObj){
76varqq=document.getElementById('qq').value;
77varreg=/^d+$/;
78if(qq.search(reg))
79{
80document.getElementById('show_qq').innerHTML="QQ只能為數字";
81returnfalse;
82}else{
83document.getElementById('show_qq').innerHTML="";
84returntrue;
85}
86
87
88}

⑺ php用戶登錄驗證,為什麼輸入正確的用戶名密碼還是提示錯誤

從以下幾個方面
第一,你憑什麼確認用戶名密碼一定正確呢,
第二,php網站是要安裝的,有沒有安裝,資料庫有沒有導入,庫參數有沒有配置
第三,如果上面兩個都是正常的,那就php本身有問題了,找程序員賣家解決

⑻ PHP用戶登陸驗證問題

錯誤提示:你發送了空內容。
原因:你發送語句是放在了引用的文件里。而SQL語句卻寫在下面。運行情況如下。
程序運行時。引用了 connect.php 文件並運行了裡面的內容。也就是說。已經發送了 SQL 語句。而這時的 $sql 可是什麼也沒有。。因為你寫在了下面。。
當程序運行到 $row=mysql_fetch_array($result); 的時候。 $result 裡面什麼也沒有。因為 mysql_query 發送的時候什麼也沒發出。跟本沒辦法返回什麼結果給你。

解決方法:把 connect.php 里的
$result=mysql_query($sql)
or die ('資料庫執行失敗:'.mysql_error());

刪除。移到 PHP 文件 $sql=""; 下面。問題即可解決。

⑼ PHP 驗證用戶名是否存在

是因為你的sql語句寫錯了,你寫的是 $sql="select * from userlist where 'user'='$user'";
這個是錯誤的,user 兩邊不是引號,是數字1旁邊的`,改成`user`='$user' 這樣就對了,或者user='$user'也行。

⑽ 用PHP寫用戶名驗證..注意我的正則表達式用法是否正確

$pattern="/\w/";這里有問題,一個字元啊。
得用/^\w+$/哦,/^[_a-zA-Z0-9]+$/也行

其實字元個數你都可以寫到正則裡面不用再額外判斷f($newname==""||$newname.length<6||A.lenth>16||!pattern.test(A))
寫成
$pattern="/^[a-zA-Z][_a-zA-Z0-9]{5,15}$/"(6-16位字元,字母開頭,只包含字母數字下劃線)然後只用
f($newname==""||!pattern.test(A))來判斷就可以了

熱點內容
成都少兒編程培訓機構 發布:2025-01-13 03:21:20 瀏覽:88
linuxatop 發布:2025-01-13 03:19:01 瀏覽:438
彩38源碼下載 發布:2025-01-13 03:16:51 瀏覽:971
手機app緩存可不可以刪 發布:2025-01-13 03:10:46 瀏覽:937
安卓怎麼顯示第五個人圖鑒 發布:2025-01-13 03:03:23 瀏覽:922
內網訪問很慢 發布:2025-01-13 03:01:01 瀏覽:454
魔獸腳本p閃 發布:2025-01-13 02:58:40 瀏覽:290
java遞減 發布:2025-01-13 02:54:40 瀏覽:489
決策樹的演算法例題 發布:2025-01-13 02:53:15 瀏覽:448
腳本四要素 發布:2025-01-13 02:40:18 瀏覽:929