你可以在登錄的時候把 這個登錄的賬號ID或者賬號名存入session里面!你每次取數據的時候就可以從session里面取到這個賬號的ID或者賬號名!進行查詢
成都創(chuàng)新互聯公司主要從事做網站、成都網站制作、網頁設計、企業(yè)做網站、公司建網站等業(yè)務。立足成都服務廣豐,十余年網站建設經驗,價格優(yōu)惠、服務專業(yè),歡迎來電咨詢建站服務:18982081108
也可以登錄的時候就把所有的信息放入session里面 以后要查看信息的時候不用去數據庫查詢了、當然這個必須要保證這個賬號的信息被修改的時候要重新把信息放入session里面!
php使用session必須先在頁面使用代碼session_start();開啟session回話
存值=$_SESSION['ID']=$ID;也可以放數組的
取值=$id=$_SESSION['ID'];
session默認存活時間為30分鐘!這個表示賬號登錄后!在30分鐘內沒有一次請求過服務器session就消亡了!
//采用pdo鏈接數據庫
try{
$dsn
=
'mysql:host=127.0.0.1;dbname=citest';
$pdo
=
new
PDO($dsn,'root','qq');
$pdo-setAttribute(3,2);
}catch(PDOEXCEPTION
$e){
echo
$e-
getMessage
();
}
//通過預處理查詢驗證
try{
$sql
=
"SELECT
count(*)
FROM
users
WHERE
username=:username
AND
password=:password";
$stmt
=
$pdo-prepare($sql);
$data
=
$stmt-execute($_GET);
//接過來的post值,前提表單中的name值和數據庫的的字段名稱相同
if($data){
echo
'登陸成功';
}else{
echo
'登陸失敗';
}
}catch(PDOEXCEPTION
$e){
echo
$e-getMessage();
}
創(chuàng)建conn.php,連接數據庫。
$dns = 'mysql:host=127.0.0.1;dbname=test';
$username = 'root';
$password = 'root';
// 1.連接數據庫,創(chuàng)建PDO對象
$pdo = new PDO($dns,$username,$password);
創(chuàng)建login.html,登陸頁面。
用戶名
密 碼
創(chuàng)建login.php,驗證賬號密碼。
header("Content-Type: text/html; charset=utf8");
if(!isset($_POST["submit"])){
exit("錯誤執(zhí)行");
}//檢測是否有submit操作
include('conn.php');//鏈接數據庫
$name = $_POST['name'];//post獲得用戶名表單值
$pwd = sha1($_POST['password']);//post獲得用戶密碼單值
if ($name $pwd){//如果用戶名和密碼都不為空
$sql = "select * from user where username = '$name' and password='$pwd'";//檢測數據庫是否有對應的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");//如果成功跳轉至welcome.html頁面
exit;
}else{
echo "用戶名或密碼錯誤";
echo "
setTimeout(function(){window.location.href='login.html';},1000);
";//如果錯誤使用js 1秒后跳轉到登錄頁面重試;
}
}else{//如果用戶名或密碼有空
echo "表單填寫不完整";
echo "
setTimeout(function(){window.location.href='login.html';},1000);
";
//如果錯誤使用js 1秒后跳轉到登錄頁面重試;
}
$pdo = null;
創(chuàng)建signup.html,注冊頁面
用戶名:
密 碼:
創(chuàng)建signup.php
header("Content-Type: text/html; charset=utf8");
if(!isset($_POST['submit'])){
exit("錯誤執(zhí)行");
}//判斷是否有submit操作
$name=$_POST['name'];//post獲取表單里的name
$pwd = sha1($_POST['password']);//post獲取表單里的password
include('conn.php');//鏈接數據庫
$sql="insert into user(id,username,password) values (null,'$name','$pwd')";//向數據庫插入表單傳來的值的sql
$stmt = $pdo-prepare($sql);
$stmt-execute();
$stmt-fetch(PDO::FETCH_BOUND);
if (!$stmt){
die('Error: ' . $stmt-getMessage());//如果sql執(zhí)行失敗輸出錯誤
}else{
echo "注冊成功";//成功輸出注冊成功
}
$pdo = null;//關閉數據庫
你記住 所有在 引號里面的 東西都是字符串!!?。。?/p>
if("SELECT username,passwd FROM wen WHERE $username=$user,$passwd=$passwd"){
echo "scriptalert('歡迎登錄!');window.location.href='index1.php';/script";
}
這一句代碼本身就是不通的.
還有就是 你的sql語句也是錯誤的。
參考如下:
$sql = 'SELECT username,passwd FROM wen WHERE username="'.$user.'" AND passwd="'.$passwd.'"';
$result = mysql_query($sql,$conn);
手動回復,不謝
兩個都有問題才對,你的SQL語句有錯,假設$_POST['username']='user';
$_POST['password']='pass';你得到的語句是SELECT username FROM DB_TABLE WHERE name= user and password= pass
而正確的語句應該是SELECT username FROM DB_TABLE WHERE name= 'user' and password= 'pass'(掉了幾個引號所以報錯)
當前文章:PHP查詢數據庫登陸,php用戶登錄界面連接數據庫
瀏覽地址:http://chinadenli.net/article28/hohijp.html
成都網站建設公司_創(chuàng)新互聯,為您提供微信小程序、App設計、自適應網站、企業(yè)網站制作、動態(tài)網站、做網站
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯