範例的網址:http://tomchen263.000webhostapp.com/LoginExample_Web/login.html
資料庫格式與資料表:
2張資料表,books與employee
books內容
employee內容
conn_mysql.php:
<?php
$db_link=@mysqli_connect("資料庫位置","資料庫帳號","資料庫密碼");
if(!$db_link){
die("資料庫連線失敗<br>");
}else{
echo"資料庫連線成功<br>";
}
mysqli_query($db_link,"SET NAMES 'utf-8'"); //設定字元集與編碼為utf-8
$seldb=@mysqli_select_db($db_link,"資料庫名稱");
if(!$seldb){
die("資料庫選擇失敗<br>");
}else{
echo"資料庫選擇成功<br>";
}
?>
login.html:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<form method="POST" action="login_php.php">
請輸入帳號:<input type="text" name="username"/><br>
請輸入密碼:<input type="Password" name="password"/><br>
<input type="submit" value="登入"/>
</form>
</body>
</html>
login_php.php:
<?php
header('Content-Type: text/html; charset=utf-8');
$username=$_POST['username'];
$password=$_POST['password'];
require("conn_mysql.php");
$sql_query_login="SELECT * FROM employee where username='$username' AND password='$password'";
$result1=mysqli_query($db_link,$sql_query_login) or die("查詢失敗");
if(mysqli_num_rows($result1)){
$sql_query="SELECT * FROM books";
$result=mysqli_query($db_link,$sql_query);
echo "<table border=1 width=400 cellpadding=5>";
echo "<tr>
<td>書籍編號</td>
<td>書籍名稱</td>
<td>負責員工編號</td>
<td>價錢</td>
</tr>";
while($row=mysqli_fetch_array($result)){
echo "<tr>
<td>$row[0]</td>
<td>$row[1]</td>
<td>$row[2]</td>
<td>$row[3]</td>
</tr>";
}
echo"</table>";
}else{
echo"登入失敗";
}
?>
謝謝你,這個可以成功登入。
回覆刪除你好,我遇到個問題,查詢出來的畫面,是亂碼。
回覆刪除請問該怎麼修正呢?
我的資料庫連線、查詢一切都正常。就只有查詢結果顯現亂碼,也就是無法顯示中文。
那可能就是你的編碼不是utf8吧
刪除哈羅您好 非常實用教學 此文章很有幫助
回覆刪除但有一個地方 有點問題 導致中文會亂碼
mysqli_query($db_link,"SET NAMES 'utf-8'"); //設定字元集與編碼為utf-8
中間的 utf-8 要把 中間的 - 拿掉 顯示就會正常了
我後來 查了一下 語法跟程式 測試了一下 確實是那個 - 的問題
但還是非常感謝您寫這篇 教學文章
也謝謝你提供這個資訊!我已經把問題解決了
刪除不好意思 為什麼我按下登入鍵,卻是出現login_php的程式碼
回覆刪除資料庫的部分希望可以詳細一點
回覆刪除php直接打開會顯示原始碼 如果適用xampp要把檔案放在htdocs裡用瀏覽器 輸入localhost/login.html的方式開啟
回覆刪除想請問一下
回覆刪除conn_mysql.php:
$db_link=@mysqli_connect("資料庫位置","資料庫帳號","資料庫密碼");
if(!$db_link){ die("資料庫連線失敗
"); }
這邊有點不太了解
導致資料庫連線都失敗
該如何處理這個問題呢?