PHP實現簡易使用者登入系統
阿新 • • 發佈:2020-07-11
PHP簡易使用者登入系統,供大家參考,具體內容如下
最近剛剛看到PHP連線資料庫的例項,於是做了一個簡易的使用者系統
直接上程式碼
連線資料庫:connect.php
<?php $servername = "localhost"; $username = "formbd"; $password = "formbd"; $dbname = "form"; // 建立連線 $conn = new mysqli($servername,$username,$password,$dbname); // 檢測連線 if ($conn->connect_error) { die("連線失敗: " . $conn->connect_error); } ?>
使用者註冊前端頁面:reg.html
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>使用者註冊頁面</title> </head> <body> <form action="reg.php" method="post"> <p>使用者名稱:<input type="text" name="name"></p> <p>密 碼: <input type="text" name="password"></p> <p><input type="submit" name="submit" value="註冊"> <a href="login.html" ><input type="button" name="login" value="已有賬號,返回登入"></a> </p> </form> </body> </html>
註冊後端處理:reg.php
<?php header("Content-Type: text/html; charset=utf8"); if(!isset($_POST['submit'])){ exit("錯誤執行"); }//判斷是否有submit操作 $name=$_POST['name'];//post獲取表單裡的name $user_password=$_POST['password'];//post獲取表單裡的password include('connect.php');//連結資料庫 $q="insert into user(id,username,password) values (null,'$name','$user_password')";//向資料庫插入表單傳來的值的sql $sql = "select * from user where username = '$name'"; if (($conn->query($sql))==$name) { echo '使用者名稱已存在'; $result = $conn->query($sql); /*echo " <script> setTimeout(function(){window.location.href='reg.html';},1000); </script> ";*/ } else { $conn->query($q); echo "註冊成功"; echo " <script> setTimeout(function(){window.location.href='login.html';},1000); </script> "; } $conn->close();//關閉資料庫 ?>
使用者登入前端頁面:login.html
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>登陸</title> </head> <body> <form name="login" action="login.php" method="post"> <p>使用者名稱<input type=text name="name"></p> <p>密 碼<input type=password name="password"></p> <p><input type="submit" name="submit" value="登入"> <a href="reg.html" ><input type="button" name="reg" value="註冊"></a> </p> </form> </body> </html>
登入後端處理:login.php
<?PHP header("Content-Type: text/html; charset=utf8"); if(!isset($_POST["submit"])){ exit("錯誤執行"); }//檢測是否有submit操作 include('connect.php');//連結資料庫 $name = $_POST['name'];//post獲得使用者名錶單值 $passowrd = $_POST['password'];//post獲得使用者密碼單值 if ($name && $passowrd){//如果使用者名稱和密碼都不為空 $sql = "select * from user where username = '$name' and password='$passowrd'";//檢測資料庫是否有對應的username和password的sql $result = $conn->query($sql);//執行sql $rows=$result->fetch_assoc();//返回一個數值 if($rows){//0 false 1 true header("refresh:0;url=success.php");//如果成功跳轉至success.php頁面 exit; }else{ echo "使用者名稱或密碼錯誤"; echo " <script> setTimeout(function(){window.location.href='login.html';},1000); </script> ";//如果錯誤使用js 1秒後跳轉到登入頁面重試; } }else{//如果使用者名稱或密碼有空 echo "表單填寫不完整"; echo " <script> setTimeout(function(){window.location.href='login.html';},1000); </script>"; //如果錯誤使用js 1秒後跳轉到登入頁面重試; } $conn->close();//關閉資料庫 ?>
登入成功後:success.php
PS:功能未完善
<?php include 'connect.php'; session_start(); //宣告變數 $username = isset($_SESSION['nmae']) ? $_SESSION['name'] : ""; ?>
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>登陸成功</title> </head> <body> 歡迎光臨 <?php echo $username;?> <?php ?> </body> </html>
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。