PHP Login แสดงชื่อผู้ใช้ จากฐานข้อมูล MySQL บทความนี้สอนเขียนโค้ดแสดงชื่อผู้ใช้งานจาก column username ในฐานข้อมูล MySQL หลังผู้ใช้งาน Login เสร็จ โดยใช้ HTML ร่วมกับ PHP และ MySQL สามารถเขียนโปรแกรมได้ดังนี้
ตัวอย่าง PHP Login แสดงชื่อผู้ใช้จากฐานข้อมูล MySQL
1. สร้างฐานข้อมูลชื่อ example และรันคำสั่ง SQL ด้านล่างเพื่อสร้างตารางชื่อ user จากนั้นใส่ข้อมูลลงในตารางตามที่ต้องการ
CREATE TABLE `user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` char(50) NOT NULL,
`password` char(50) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8mb4
+----+----------+----------+
| id | username | password |
+----+----------+----------+
| 1 | admin | 01234 |
+----+----------+----------+
2. เขียนโค้ด PHP Login แสดงชื่อผู้ใช้
<?php
session_start();
$error = "";
isset( $_POST['username'] ) ? $username = $_POST['username'] : $username = "";
isset( $_POST['password'] ) ? $password = $_POST['password'] : $password = "";
if( !empty( $username ) && !empty( $password ) ) {
$conn = mysqli_connect( "localhost", "root", "", "example" );
mysqli_query( $conn, "SET NAMES UTF8" );
$sql = "
SELECT id, username
FROM user
WHERE
( username = '{$username}' ) AND
( password = '{$password}' )
";
$q = mysqli_query( $conn, $sql );
$f = mysqli_fetch_assoc( $q );
if( isset( $f['id'] ) ) {
$_SESSION['id'] = $f['id'];
$_SESSION['username'] = $f['username'];
} else {
$error = "Username หรือ Password ผิดพลาด";
}
mysqli_close( $conn );
}
?>
<?php if( empty( $_SESSION['id'] ) ) { ?>
<form action="index.php" method="POST">
<fieldset>
<legend>กรุณาเข้าสู่ระบบ</legend>
<input type="text" name="username" placeholder="ชื่อผู้เข้าใช้งาน">
<input type="password" name="password" placeholder="รหัสผ่าน">
<input type="submit" value="เข้าสู่ระบบ">
<?=$error;?>
</fieldset>
</form>
<?php } else { ?>
<fieldset>
<legend>สวัสดี และยินดีต้อนรับ</legend>
<div>คุณ <b><?=$_SESSION['username'];?></b></div>
</fieldset>
<?php } ?>
PHP Login แสดงชื่อผู้ใช้ จากฐานข้อมูล MySQL มีรายละเอียดโค้ดที่เกี่ยวข้องดังนี้
1. กรณียังไม่ Login โปรแกรมจะทำงานใน if( empty( $_SESSION['id'] ) ) ซึ่งจะแสดงฟอร์มสำหรับ Login
2. เมื่อผู้ใช้งานกรอกข้อมูลสำหรับเข้าสู่ระบบ โปรแกรมจะรับค่าตัวแปรทั้ง 2 ด้วย $_POST และเชื่อมต่อฐานข้อมูล MySQL
3. รันคำสั่ง SQL และสร้างตัวแปร session id เพื่อเก็บค่าการ Login และ username เพื่อเก็บชื่อผู้ใช้งาน
4. เมื่อ Login สำเร็จโปรแกรมจะแสดงชื่อผู้ใช้งานที่เก็บไว้ในตัวแปร $_SESSION['username'] ออกสู่หน้าเว็บไซต์