PHP - ระบบ Login สำหรับ members


ตาราง members

id (int) auto number, primary key
fullname varchar(50)
email varchar(100)
username varchar(50)
password varchar(50)

----------------------------------------

conn.php
ไฟล์สำหรับติดต่อฐานข้อมูลและเลือกฐานข้อมูล
<?php
$conn = mysql_connect("localhost","root","pass");
$select_db = mysql_select_db("dbname");
mysql_query("SET character_set_connection=utf8");
mysql_query("SET character_set_client=utf8");
mysql_query("SET character_set_results=utf8");
?>

---------------------------------------------------

login.html
ไฟล์ฟอร์มสำหรับกรอกข้อมูล login

<form action="login_process.php" method="post">
<table width="100%">
<tr>
<td>Username</td><td><input type="text" name="username"></td>
</tr>
<tr>
<td>Password</td><td><input type="password" name="password"></td>
</tr>
<tr>
<td></td><td><input type="submit" value="เข้าสู่ระบบ"></td>
</tr>
</table>
</form>

--------------------------------------------------------

login_process.php
ไฟล์ที่ใช้ในการประมวลผลค่าจากฟอร์มว่ามีข้อมูลในฐานข้อมูลหรือเปล่าถ้ามีก็ให้สร้าง session ในตัวแปร $_SESSION['member'] แบบ array 2 มิติ

<?php
session_start();
include 'conn.php';
$username = $_POST['username'];
$password = $_POST['password'];

$sql = "SELECT * FROM members WHERE username='$username' AND password='$password'";
$result = mysql_query($sql);
$num = @mysql_num_rows($result);

if($num>0){
$rs = mysql_fetch_array($result);
$_SESSION['member'] = $rs;

$text = "เข้าสู่ระบบเรียบร้อย <a href='test_member.php'>ทดสอบ session</a>";
}else{
$text = "Username หรือ Password ผิด";
}
?>

---------------------------------------------------
test_member.php
ทดสอบว่าสามารถใช้ session ตรวจจับได้หรือเปล่า

<?php
session_start();

echo "สวัสดี ".$_SESSION['member']['fullname'];
print_r($_SESSION['member']);

if($_SESSION['member']['id']){

echo "ใช้งานระบบได้";

}else{

echo "ใช้งานระบบไม่ได้";

}
?>

คำสำคัญ (Tags): #login#member#php
หมายเลขบันทึก: 334445เขียนเมื่อ 6 กุมภาพันธ์ 2010 21:55 น. ()แก้ไขเมื่อ 23 มิถุนายน 2012 03:51 น. ()สัญญาอนุญาต: ครีเอทีฟคอมมอนส์แบบ แสดงที่มา-ไม่ใช้เพื่อการค้า-อนุญาตแบบเดียวกันจำนวนที่อ่านจำนวนที่อ่าน:


ความเห็น (4)

อ่านแล้วอย่าลืมสละเวลาแสดงความคิดเห็นให้หน่อยนะครับ ^^

ผมลองคัดลอกสคริปไปใช้แล้วแต่เวลาเราใส่userกะpassไปแล้วมันก็ลิ้งไปlogin_process.php

แต่เป็นหน้าว่างปล่าวอะครับ

อ้อ ครับพอดีลืมให้แสดงผลออกมาครับ ก็เพิ่มบรรทัดสีน้ำเงินตามด้านล่างได้เลยนะครับ

<?php
session_start();
include 'conn.php';
$username = $_POST['username'];
$password = $_POST['password'];

$sql = "SELECT * FROM members WHERE username='$username' AND password='$password'";
$result = mysql_query($sql);
$num = @mysql_num_rows($result);

if($num>0){
$rs = mysql_fetch_array($result);
$_SESSION['member'] = $rs;

$text = "เข้าสู่ระบบเรียบร้อย <a href='test_member.php'>ทดสอบ session</a>";
}else{
$text = "Username หรือ Password ผิด";
}
echo $text;
?>

สุดยอดเลยครับ สั้นๆแต่ได้ใจความ

พบปัญหาการใช้งานกรุณาแจ้ง LINE ID @gotoknow
ClassStart
ระบบจัดการการเรียนการสอนผ่านอินเทอร์เน็ต
ทั้งเว็บทั้งแอปใช้งานฟรี
ClassStart Books
โครงการหนังสือจากคลาสสตาร์ท