PHP MySQL กับ Login Form แบบใช้ session
PHP MySQL กับ Login Form แบบใช้ session
วันนี้โปรแกรมเมอร์กากกาก จะมาแสดงตัวอย่างการทำหน้า login ด้วย PHP และมีการเก็บ session ไว้ใช้งานกัน เราลองมาดูตัวอย่าง CODE กันเลยดีกว่า
CODE PHP MySQL กับ Login Form แบบใช้ session
<?php session_start(); ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script language="javascript">
function checkNull(){ //ชื่อ function ตั้งได้ตามความสดวกของเราได้เลยครับ
var forms=document.form1; //ผมสร้างตัวแปรมาเพื่ออ้างถึง form ครับ
if(forms.user.value == "" ){ //เช็ค if ใน textfile ที่กำหนด ตรง .value == "" คือถ้าเป็นค่า null ก็ให้ทำงานภายใน if นี้.
alert('กรุณากรอก Username'); //สั่งให้ขึ้นข้อความที่ต้องการ
forms.user.focus(); //เพิ่มความฉลาดให้โปรแกรมโดยการให้ cursor วิ่งไปในช่องที่ว่างอยู่
return false; //return false เป็นการไม่ให้โปรแกรมหรือหน้าเว็บเราทำงานต่อ
}
else if (forms.password.value == ""){
alert('กรุณากรอก Password');
forms.password.focus();
return false;
}
}
</script>
<title>Login</title>
<!-- Le styles -->
<link href="css/bootstrap/css/bootstrap.css" rel="stylesheet">
<style type="text/css">
body {
padding-top: 40px;
padding-bottom: 40px;
background-color: #f5f5f5;
}
.form-signin {
max-width: 300px;
padding: 19px 29px 29px;
margin: 0 auto 20px;
background-color: #fff;
border: 1px solid #e5e5e5;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
-webkit-box-shadow: 0 1px 2px rgba(0,0,0,.05);
-moz-box-shadow: 0 1px 2px rgba(0,0,0,.05);
box-shadow: 0 1px 2px rgba(0,0,0,.05);
}
.form-signin .form-signin-heading,
.form-signin .checkbox {
margin-bottom: 10px;
}
.form-signin input[type="text"],
.form-signin input[type="password"] {
font-size: 16px;
height: auto;
margin-bottom: 15px;
padding: 7px 9px;
}
</style>
<link href="css/bootstrap/css/bootstrap-responsive.css" rel="stylesheet">
</head>
<body>
<div class="container">
<form class="form-signin" method="post" name="form1" onsubmit="javascript:return checkNull();">
<h1 align="center"> </h1>
<h3 class="form-signin-heading" align="center">หน้า Login โดย</h3>
<p align="center">www.โปรแกรมเมอร์กากกาก.blogspot.com</p>
<input type="text" class="input-block-level" placeholder="User" name="user" id="user">
<input type="password" class="input-block-level" placeholder="Password" name="password" id="password">
<button name="login" id="login" class="btn btn-large btn-block btn-primary" type="submit">เข้าสู่ระบบ</button>
</form>
</div> <!-- /container -->
<?php
if($_POST){
$user = $_REQUEST['user'];
$pw = $_REQUEST['password'];
include("dbconfig.php");
$db=new MYSQL(HOST,USER,PASS,DBNAME);
$db->FIELD = "*";
$db->TABLE = "member WHERE user = '$user' AND password = md5('$pw') ";
$db->SELECT();
if($db->NUM_ROWS() != 1 ){
echo '<div class="alert alert-error" align="center">User หรือ Password ไม่ถูกต้อง</div>';
}else{
if($data = $db->FETCH_ARR()){
$_SESSION['ses_id_member'] = $data['id_member'];
echo '<script type="text/javascript">window.location="index.php";</script>';
}
}exit;
}//end if post
?>
</body>
</html>
อธิบาย CODE PHP MySQL กับ Login Form แบบใช้ session
1. สีเขียว เป็นการประกาศ session_start(); เพื่อให้ทำการใช้ session ได้หรือเรียกใช้ session นั้นเอง
2.สีน้ำเงิน เป็น CODE javascript เพื่อเช็คค่าว่างนั้นเองในส่วนนี้เราเคยได้มีตัวอย่างไปแล้ว
3.สีม่วงเป็นส่วนของ CSS ที่เราเลือกมาใช้นัี้นก็คือ CSS bootstrap นั้นเองซึ่งในบอกความนี้เราก็ได้นำเสนอไปแล้ว
4. สีแดง เป็น CODE การทำงานของ PHP ซึ่งการทำงานในที่นี้ เราได้ include ไฟล์ connect Database มาใช้งานนั้นคือไฟล์ dbconfig.php(การใช้ PHP ติดต่อฐานข้อมูล MYSQL ในรูปแบบ Class) และมีการ select ค่าจากฐานข้อมูลมาเทียบกับที่กรอกไว้ว่า USER และ PASSWORD ถูกต้องหรือป่ว ถ้าไม่ถูกต้องก็จะขึ้นข้อความแจ้งเตือน แต่ถ้า USER PASSWORD ถูกต้องก็จะทำในเงื่อนไขต่อไปคือ ให้ id ของ สมาชิกเก็บไว้ในตัวแปล session และให้ เด้งไปหน้า index.php ต่อไปและยังเก็บค่า $_SESSION['ses_id_member'] เพื่อนำไปใช้งานในรูปแบบต่างๆ
5.สีดำเป็นส่วนของ html
หวังว่าบทความนี้คงเป็นประโยชน์ต่อผู้ที่สนใจ และในส่วน ของไฟล์ dbconfig.php สามาคลิกเข้าไปดูตัวอย่างได้ที่ ตัวอย่างไฟล์ dbconfig.php สามารถคลิกได้ที่ การใช้ PHP ติดต่อฐานข้อมูล MYSQL ในรูปแบบ Class
0 ความคิดเห็น :
แสดงความคิดเห็น