php mysql教程欄目介紹實現簡單注冊登陸頁面。
推薦:php mysql教程
登陸頁面index.html
注冊頁面 register.html
安裝Mysql數據庫后,用MySQL數據庫管理頁面phpMyAdmin創建數據庫和表單
瀏覽器輸入:域名/phpmyadmin ,沒有域名輸入:ip/phpmyadmin或者127.0.0.1/phpmyadmin(127.0.0.1為本機地址)
在數據庫里創建表單
代碼如下:
立即學習“PHP免費學習筆記(深入)”;
index.html
<!DOCTYPE html><html><head> <meta charset="UTF-8"> <title>登錄</title></head><body> <p> <b>登錄</b> <form action="login.php" method="post"> <p><span>用戶名:</span><input type="text" name="user" required="" /></p> <p><span>密碼:</span><input type="password" name="pass"/ required=""></p> <p><input type="reset" name=""/> <input type="submit" name=""/></p> </form> <a href="register.html">新用戶注冊</a> </p></body></html>
login.php
<meta charset="utf-8"><?php $conn = mysqli_connect('localhost','root','password','db_name') or die('數據庫連接失敗'); $conn->query("SET NAMES 'UTF8'"); $user = $_POST['user']; $pass = $_POST['pass']; $sql="SELECT * FROM users where user='{$user}' and pass='{$pass}'"; $result=$conn->query($sql); $row = mysqli_num_rows($result); //若表中存在輸入的用戶名和密碼,row=1;若表中用戶名不存在或密碼錯誤,則row=0 if($row == 1){ echo $row['user']."登陸成功!"; } else{ echo"登錄失敗,請重新登錄!"; } ?>
register.html
<!DOCTYPE html><html><head> <meta charset="UTF-8"> <title>注冊</title></head><body> <p> <b>注冊</b> <form action="register.php" method="post"> <p><span>用戶名:</span><input type="text" name="user" required=""/></p> <p><span>密碼:</span><input type="password" name="pass" required=""/></p> <p><span>聯系:</span><input type="text" name="connect" value="" required=""/></p> <p> <input type="reset" name=""/> <input type="submit" name=""/> </p> </form> <a href="index.html">已注冊</a> </p></body></html>
register.php
<?php header ( "Content-type:text/html;charset=utf-8" ); $conn = mysqli_connect('localhost','root','password','db_name') or die('數據庫連接失敗'); $conn->set_charset('utf8'); $user = $_POST['user']; $pass = $_POST['pass']; $connect = $_POST['connect']; $sql = "INSERT INTO users(id,user,pass,connect) VALUES (null,'{$user}' ,'{$pass}','{$connect}')"; mysqli_query($conn,$sql) or die(mysqli_error($conn)); echo("注冊成功!!!<br/><a href='index.html'>點擊登錄</a>") ?>
———————————————————————————————————————
補充:(踩過的坑)
1. PHP7連接數據庫的方式:使用mysqli或pdo
使用mysqli_connect()時地址用localhost而不是ip,否則連接不上服務器。
參考:https://blog.csdn.net/zwliang98/article/details/82997349
2. php輸出執行sql語句的錯誤信息:
mysqli_query($conn,$sql) or die(mysqli_error( $conn ));
3. bug
bug 1:
Incorrect Integer value: ‘’ for column ‘id’ at row 1
php5以上的版本如果是空值應該要寫NULL
#錯誤 $sql = "INSERT INTO users(id,user,pass,connect) VALUES ('','{$user}' ,'{$pass}','{$connect}')";#改為 $sql = "INSERT INTO users(id,user,pass,connect) VALUES (null,'{$user}' ,'{$pass}','{$connect}')";
bug 2:
Incorrect String value: ‘xE7x94xB7’ for column ‘sex’ at row 1
鏈接:MySQL插入中文錯誤問題方法
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END