用PHP做出一個簡單的登陸操作,確實很簡單,下面就讓我給大家簡單的介紹一下PDO做出一個登陸介面操作的過程,因為也是初學乍練,不足之處請大家包涵。
首先,首先還要建一個表,在MySQL中建表,核心程式碼如下:
1 DROP TABLE IF EXISTS `t_login`; 2 CREATE TABLE `t_login` ( 3 `userid` int(4) NOT NULL DEFAULT '0', 4 `username` varchar(20) DEFAULT NULL, 5 `userpass` varchar(20) DEFAULT NULL, 6 `userphone` varchar(25) DEFAULT NULL, 7 `useraddress` varchar(50) DEFAULT NULL, 8 PRIMARY KEY (`userid`) 9 ) ENGINE=InnoDB DEFAULT CHARSET=utf8; 10 11 -- ---------------------------- 12 -- Records of t_login 13 -- ---------------------------- 14 INSERT INTO `t_login` VALUES ('0', '11', '1111111', '1111', '111'); 15 INSERT INTO `t_login` VALUES ('1', 'admin', 'admin', '1212', '111111');
下面就來具體講一下操作流程,建一個專案,命名為P_U,在專案中新建兩個檔案,分別命名為View和Model,新建檔案是為了好分層管理,有一個好的習慣是很重要的,所以在初學的時候,有分層的意識是很重要的。View是檢視層,這個Model是資料處理層和業務邏輯層吧。
第一,先做出兩個介面來,login.php和res.php,下面依次是login和res的程式碼。
1 <form action="../Model/LoginModel.php" method="post"> 2 <div align="center"> 3 <table> 4 <tr> 5 <td>姓名:</td> 6 <td> 7 <input type="text" name="username"> 8 </td> 9 </tr> 10 <tr> 11 <td>密碼:</td> 12 <td> 13 <input type="password" name="userpass"> 14 </td> 15 </tr> 16 <tr> 17 <td></td> 18 <td> 19 <input type="submit" value="登陸"> 20 <input type="reset" value="重置"> 21 </td> 22 </tr> 23 </table> 24 <a href="res.php">沒有賬號,請註冊</a> 25 </div> 26 </form>
<form action="../Model/ResModel.php" method="post"> <table> <tr> <td>使用者名稱:</td> <td> <input type="text" name="username"> </td> </tr> <tr> <td>登陸密碼</td> <td> <input type="text" name="userpass"> </td> </tr> <tr> <td>重複密碼:</td> <td> <input type="text" name="userpassagin"> </td> </tr> <tr> <td>電話:</td> <td> <input type="text" name="userphone"> </td> </tr> <tr> <td>住址:</td> <td> <input type="text" name="useraddress"> </td> </tr> <tr> <td></td> <td> <input type="submit" value="提交"> </td> </tr> </table> </form>
在這個裡面,我就不寫JS程式碼了,因為就是一個表單驗證,方法很多,百度的資料也特別的多。
二,在Model裡面下工夫了,建立一個LoginModel.php和ResModel.php,下面是它們的程式碼:
LoginModel.php程式碼如下:
1 <?php 2 @$username = $_POST[username]; 3 @$userpass = $_POST[userpass]; 4 5 $dbms = "mysql";//選擇資料庫型別,MySQL 6 $host = "127.0.0.1"; //選擇伺服器 7 $userName = "";//使用者名稱 8 $psw = ""; 9 $dbName = "dbtext";//資料庫名稱 10 $dsn = "$dbms:host=$host;dbname=$dbName"; 11 12 try { 13 $pdo = new PDO($dsn, $userName, $psw); 14 $query = "select * from t_login where username=:username and userpass = :userpass"; 15 $request = $pdo->prepare($query); 16 $request->bindParam(':username', $username); 17 $request->bindParam(':userpass', $userpass); 18 $request->execute(); 19 $res = $request->fetchAll(PDO::FETCH_ASSOC); 20 if (!empty($res)){ 21 header('Location: http://localhost/P_U/View/main.php'); 22 }else{ 23 header('Location: http://localhost/P_U/View/login.php'); 24 } 25 } catch (Exception $e) { 26 die("Error!!".$e->getMessage()); 27 } 28 29 ?>
ResModel.php程式碼如下:
1 <?php 2 @$username = $_POST[username]; 3 @$userpass = $_POST[userpass]; 4 @$userphone = $_POST[userphone]; 5 @$useraddress = $_POST[useraddress]; 6 7 $dbms = "mysql";//選擇資料庫型別,MySQL 8 $host = "127.0.0.1"; //選擇伺服器 9 $userName = "ecstore";//使用者名稱 10 $psw = "ecstore2014!@#"; 11 $dbName = "dbtext";//資料庫名稱 12 $dsn = "$dbms:host=$host;dbname=$dbName"; 13 14 try { 15 $pdo = new PDO($dsn, $userName, $psw); 16 $query = "insert into t_login(username,userpass,userphone,useraddress) VALUES (:username,:userpass,:userphone,:useraddress)"; 17 $request = $pdo->prepare($query); 18 19 $request->bindParam(':username', $username); 20 $request->bindParam(':userpass', $userpass); 21 $request->bindParam(':userphone', $userphone); 22 $request->bindParam(':useraddress', $useraddress); 23 24 $res = $request->execute(); 25 if(!empty($res)){ 26 echo "註冊成功!!"; 27 echo "<a href='http://localhost/P_U/View/login.php'>返回登陸介面</a>"; 28 } 29 30 } catch (Exception $e) { 31 die("註冊失敗!!!".$e->getMessage()); 32 } 33 34 ?>
好了,隨便寫一個main.php介面吧,登陸成功後就自動跳到main.php介面上。
百度雲資料,原始碼下載連線:http://pan.baidu.com/s/1dDdagEl
php就是這麼簡單,好好的學,總會有收穫,希望能幫到你。