//采用pdo鏈接數(shù)據(jù)庫
豐滿ssl適用于網(wǎng)站、小程序/APP、API接口等需要進行數(shù)據(jù)傳輸應用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:028-86922220(備注:SSL證書合作)期待與您的合作!
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值和數(shù)據(jù)庫的的字段名稱相同
if($data){
echo
'登陸成功';
}else{
echo
'登陸失敗';
}
}catch(PDOEXCEPTION
$e){
echo
$e-getMessage();
}
php鏈接mysql必備條件:
已安裝mysql數(shù)據(jù)庫;
檢查php環(huán)境是否已開啟mysql擴展(一般情況下是開啟的);
檢查方法:a.使用phpinfo();函數(shù),看有沒有mysql項;b.打開php.ini文件,檢查php_mysql.dll前分號是否已取掉。
php鏈接代碼如下:
?php
//設(shè)置編碼格式
header("Content-type:text/html;charset=utf-8");
//定義數(shù)據(jù)庫主機地址
$host="localhost";
//定義mysql數(shù)據(jù)庫登錄用戶名
$user="root";
//定義mysql數(shù)據(jù)庫登錄密碼
$pwd="";
//鏈接數(shù)據(jù)庫
$conn = mysql_connect($host,$user,$pwd);
//對連接進行判斷
if(!$conn){
die("數(shù)據(jù)庫連接失??!".mysql_errno());
}else{
echo "數(shù)據(jù)庫連接成功!";
}
?
mysql_query($db);
這是要干什么啊?把這句去掉;
$sql="select *from user where name=$username and password=$pws;"
改成
$sql="select * from user where name='".$username."' and password='".$pws."'";
1.*號后邊應該有空格;
2.最后的分號應該在引號外邊;
3.查詢語句中的字符串應該加引號;
試試看
另外提兩點建議:
1 $db=mysql_select_db("B");
寫成 $db=mysql_select_db("B",$link);
養(yǎng)成個好習慣,省得到用到多個數(shù)據(jù)庫時容易亂;
2.$_SESSION["name"]="2";//先將值定義為假//
定義為假的時候直接 $_SESSION["name"]="" 就好了,要不多亂啊。
3. if($row==1)
{
$_SESSION["name"]="1";
}
else $_SESSION["name"]="2";
前邊已經(jīng)定義完 $_SESSION["name"]="2 了 后邊這個 else 就沒有必要寫了啊。
你應該先定位是哪里錯了啊,在每個數(shù)據(jù)庫操作語句后邊都加上, or die(mysql_error());
根據(jù)錯誤提示看看錯誤出在哪,看不懂的話把錯誤提示語句一起發(fā)上來,效率會更高 呵呵。
你應該先看看執(zhí)行的是那條語句,然后看看執(zhí)行這條語句的條件,這樣往前推,你的錯誤也有可能在登錄頁面上,仔細找找多看幾遍代碼你一定能找到的。
?php
$conn=@mysql_connect("localhost","root","")or die("數(shù)據(jù)庫鏈接失敗");
mysql_select_db(wk,$conn);
mysql_query("set names utf8");
$name=$_POST["zhanghao"];
$pwd=$_REQUEST["mima"];
$sql="select * from zhuce where username = '$name' and password = '$pwd'";
echo $sql;
$result=mysql_query($sql,$conn);
$row=mysql_fetch_array($result);
if(!$row){
echo "scriptwindow.alert('用戶不存在或者密碼錯誤');/script";
}
else{
echo "scriptwindow.alert('$row[username],歡迎您');/script";
}
?
判斷的不是很清楚,我也是新手,呵呵
建議樓主檢查一下sql對不對,主要看你數(shù)據(jù)庫有沒有sql語句的字段或者表
還有,你的密碼是經(jīng)過md5處理的,所以,你看你在做注冊用戶的時候,密碼是不是也經(jīng)過了md5處理,沒有的話,系統(tǒng)會判斷2個密碼不相等,盡管他們的值是相同的(MD5不懂的話去搜搜,大把大把的),我估計是你注冊的時候密碼沒處理~,你把$password = MD5($_POST['password']);的MD5去掉試試
if($check_query){
$_SESSION['username'] = $username;
echo $username,' 歡迎你!進入 a href="my.php"用戶中心/abr /';
exit;
} else {
exit('登錄失?。↑c擊此處 a href="javascript:history.back(-1);"返回/a 重試');
}
$_SESSION['username'] = $username 是把用戶名的值賦給一個叫username的session(這屬于會話,不懂去搜搜看)
分享名稱:用戶php連接數(shù)據(jù)庫登錄,用戶php連接數(shù)據(jù)庫登錄不上
網(wǎng)頁地址:http://jinyejixie.com/article24/hchhje.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作、軟件開發(fā)、全網(wǎng)營銷推廣、商城網(wǎng)站、虛擬主機、動態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)