今天這位PHP是搭配Day17 翻玩 login.php一起,實現驗證登入的 email 與密碼。
還有喵一下 logout.php,跳出來的的寫法!
如果你是第一次看本系列的邦友,可以先點擊下方 Day01 文章,內含 30 秒的 Demo 短片跟原始碼下載。
先來快速瀏覽一下程式碼,重點在if判斷式的部分
<?php
session_start();
$email = $_POST['email'];
$password = $_POST['password'];
//Open a new connection to the MySQL server
$mysqli = new mysqli('localhost', 'root', '123456', 'perfectcup');
//Output any connection error
if ($mysqli->connect_error) {
die('Error : (' . $mysqli->connect_errno . ') ' . $mysqli->connect_error);
}
$query = "SELECT * FROM members WHERE email='$email'";
$result = mysqli_query($mysqli, $query) or die(mysqli_error());
$num_row = mysqli_num_rows($result);
$row = mysqli_fetch_array($result);
if ($num_row >= 1) {
if (password_verify($password, $row['password'])) {
$_SESSION['login'] = $row['id'];
$_SESSION['fname'] = $row['fname'];
$_SESSION['lname'] = $row['lname'];
echo 'true';
}
else {
echo 'false';
}
} else {
echo 'false';
}
?>
<?php
if ($num_row >= 1) {
if (password_verify($password, $row['password'])) {
$_SESSION['login'] = $row['id'];
$_SESSION['fname'] = $row['fname'];
$_SESSION['lname'] = $row['lname'];
echo 'true';
}
else {
echo 'false';
}
} else {
echo 'false';
}
?>
<?php
session_start();
unset($_SESSION['login']);
unset($_SESSION['fname']);
unset($_SESSION['lname']);
header("location:index.php?logout=true");
?>
今天我們跳進出,又跳出來了,非常欠打活潑,終於介紹了一輪,會員驗證部落格所有出廠的 PHP 醬,我們這個系列就此結束,感謝大家的支持與收看...(迷之音:不是才寫到第19天)
別擔心,明天會討論新的菜單,PHP 炒 MySQL 佐 BootstrapJQuery會碰出甚麼火花呢?應該會蠻好吃的吧!各位晚安,See you tomorrow