這個(gè)就是比較基礎(chǔ)的事情啦
站在用戶的角度思考問題,與客戶深入溝通,找到石樓網(wǎng)站設(shè)計(jì)與石樓網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名申請(qǐng)、虛擬空間、企業(yè)郵箱。業(yè)務(wù)覆蓋石樓地區(qū)。
你的代碼中:if(mysql_affected_rows($link)!=0)
意思是某個(gè)查詢所影響的行數(shù),如果用戶名和密碼都不對(duì),將返回0行,當(dāng)然就不能通過驗(yàn)證啦
這樣是一次性驗(yàn)證了用戶名和密碼.
但是你的sql語句有問題
應(yīng)該這樣 : $sql2="select * from user where name = '$name' and password = '$pass'";
你要獲取查詢的結(jié)果: 一般都用 mysql_fetch_array();
按照你上面例子用法
$result = mysql_query (select * from user where name = '$name')
$row = mysql_fetch_array($result);
如果你的sql語句沒錯(cuò)話,用戶名又存在
那么 就返回了一個(gè)數(shù)組 $row
你用echo $row[0] 或者 $row['name'] 試試就可以獲得內(nèi)容
你獲得了用戶名之后,就可以繼續(xù)查詢秘密是否正確啦..
原來一樣
還不懂的話,來我博客看看 我也在學(xué)習(xí)php 大家交流一下
創(chuàng)建conn.php,連接數(shù)據(jù)庫。
$dns = 'mysql:host=127.0.0.1;dbname=test';
$username = 'root';
$password = 'root';
// 1.連接數(shù)據(jù)庫,創(chuàng)建PDO對(duì)象
$pdo = new PDO($dns,$username,$password);
創(chuàng)建login.html,登陸頁面。
用戶名
密 碼
創(chuàng)建login.php,驗(yàn)證賬號(hào)密碼。
header("Content-Type: text/html; charset=utf8");
if(!isset($_POST["submit"])){
exit("錯(cuò)誤執(zhí)行");
}//檢測(cè)是否有submit操作
include('conn.php');//鏈接數(shù)據(jù)庫
$name = $_POST['name'];//post獲得用戶名表單值
$pwd = sha1($_POST['password']);//post獲得用戶密碼單值
if ($name $pwd){//如果用戶名和密碼都不為空
$sql = "select * from user where username = '$name' and password='$pwd'";//檢測(cè)數(shù)據(jù)庫是否有對(duì)應(yīng)的username和password的sql
$stmt = $pdo-prepare($sql);
$stmt-execute();
if($stmt-fetch(PDO::FETCH_BOUND)){//0 false 1 true
header("refresh:0;url=welcome.html");//如果成功跳轉(zhuǎn)至welcome.html頁面
exit;
}else{
echo "用戶名或密碼錯(cuò)誤";
echo "
setTimeout(function(){window.location.href='login.html';},1000);
";//如果錯(cuò)誤使用js 1秒后跳轉(zhuǎn)到登錄頁面重試;
}
}else{//如果用戶名或密碼有空
echo "表單填寫不完整";
echo "
setTimeout(function(){window.location.href='login.html';},1000);
";
//如果錯(cuò)誤使用js 1秒后跳轉(zhuǎn)到登錄頁面重試;
}
$pdo = null;
創(chuàng)建signup.html,注冊(cè)頁面
用戶名:
密 碼:
創(chuàng)建signup.php
header("Content-Type: text/html; charset=utf8");
if(!isset($_POST['submit'])){
exit("錯(cuò)誤執(zhí)行");
}//判斷是否有submit操作
$name=$_POST['name'];//post獲取表單里的name
$pwd = sha1($_POST['password']);//post獲取表單里的password
include('conn.php');//鏈接數(shù)據(jù)庫
$sql="insert into user(id,username,password) values (null,'$name','$pwd')";//向數(shù)據(jù)庫插入表單傳來的值的sql
$stmt = $pdo-prepare($sql);
$stmt-execute();
$stmt-fetch(PDO::FETCH_BOUND);
if (!$stmt){
die('Error: ' . $stmt-getMessage());//如果sql執(zhí)行失敗輸出錯(cuò)誤
}else{
echo "注冊(cè)成功";//成功輸出注冊(cè)成功
}
$pdo = null;//關(guān)閉數(shù)據(jù)庫
if($_POST[id]=='$a') $a 不能用單引號(hào)括起來,要么用雙引號(hào),要不不用,單引號(hào)擴(kuò)住的話,它不會(huì)編譯,只會(huì)把它堪稱是字符串 $a 來看待。我說一個(gè)問題哦,僅僅是我自己理解的,你在頁面?zhèn)鬏數(shù)臅r(shí)候接受 id ($_POST[id]==)的值,而你又要和$a(用戶名$lr[luser]; )比較( _POST[id]=='$a' ),你的用戶民 是字符串,而id是數(shù)字類型的,怎么能相等...
如果不考慮sql注入,不過率用戶輸入信息的話,最簡(jiǎn)單的代碼如下:
?php
if($_SERVER['REQUEST_METHOD'] == 'POST'){
$db = mysql_connect("localhost","root","123") or die("fail");
echo "connect ok!br";
mysql_select_db('ck');
$_POST['pwd'] = md5($_POST['pwd']);//如果數(shù)據(jù)庫里存的不是md5碼,這句就不用了
$sql = "select * from adminuser where username='{$_POST['name']}' and password='{$_POST['pwd']}'";
$result = mysql_query($sql);
if(mysql_num_rows($result) != 0){
echo "找到了!";
}
else{
echo "沒這個(gè)人!";
}
exit();
}
?
html
head
meta http-equiv="Content-Type" content="text/html; charset=gb2312" /
title用戶信息/title
/head
form name="fm" action="" method="post"
input type="text" name="name" value="" /
input type="password" name="pwd" value="" /
input type="submit" value="提交" /
/form
/html
新聞名稱:php連接數(shù)據(jù)庫密碼驗(yàn)證 登錄界面php連接數(shù)據(jù)庫
網(wǎng)頁地址:http://chinadenli.net/article40/ddochho.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、ChatGPT、網(wǎng)站策劃、搜索引擎優(yōu)化、網(wǎng)站內(nèi)鏈、移動(dòng)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)