|
|
|
ผมทำล็อกอินแบบ ajax แล้วต้องการเช็ค useronline มีวิธีทำยังไงครับ |
|
|
|
|
|
|
|
พอดีผมไม่ได้เป็น สมาชิกเวปนั้นผมไม่เห็น code แต่ผมคิดว่า ถ้าเราเขียน code setค่า online 01 ต่อจาก login ไปเลยก็หน้าจะได้นะครับ
|
|
|
|
|
Date :
2010-10-13 09:43:01 |
By :
- - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
โทษทีครับ
นี่ครับโค้ด
หน้าแรกครับ
Code (PHP)
<html>
<head>
<script>
function Inint_AJAX () {
var xmlhttp = false;
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch(e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch(e) {
xmlhttp = false;
}
}
if(!xmlhttp && document.createElement){
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
}
function check_user(username, passwd, action) {
var cancle=false;
if (action=='login') {
if (username.length==0) {
alert('กรุณาป้อน Username ก่อน');
document.login_form.user.focus();
cancle=true;
} else if (passwd.length==0) {
alert('กรุณาป้อน Password ก่อน') ;
document.login_form.passwd.focus();
cancle=true;
}
}
if (cancle==false) {
var req = Inint_AJAX();
req.onreadystatechange = function () {
if (req.readyState==4) {
if (req.status==200) {
var ret=req.responseText; //รับค่ากลับมา
document.getElementById("login_table").innerHTML=ret;
// เขียนคำสั่ง Refresh หน้าหลัก ที่นี่ หาก login สำเร็จ
// หรือ อาจเขียนคำสั่งอื่นๆ หลังจาก login แล้ว ที่นี่ (javascript)
// document.location.reload();
}
}
};
req.open("POST", "checkuser.php"); //สร้าง connection
req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); //header
req.send("user="+encodeURIComponent(username)+
"&passwd="+encodeURIComponent(passwd)+
"&action="+action); //ส่งค่า
}
return false;
}
//โหลดครั้งแรก
window.onload = function()
{
check_user( '', '', '' );
};
</script>
</head>
<body>
<form name="login_form" id="login_form" method="post" onsubmit="return check_user(login_form.user.value, login_form.passwd.value, 'login')" action="?">
<table cellspacing="0" cellpadding="2">
<tr><td>
<table cellspacing="0" cellpadding="1">
<tr><td id="login_table">Loading...</td></tr>
</table>
</td></tr>
</table>
</form>
</body>
</html>
หน้า cehckuser.php ครับ
Code (PHP)
<?
//สำหรับเมื่อใช้ภาษาไทย
header("content-type: application/x-javascript; charset=utf-8");
//ค่าที่รับมา
$user=$_POST[user];
$passwd=$_POST[passwd];
$action=$_POST[action];
if (isset($action) & $action=='logout') { //ออกจากระบบชั่วคราว
unset($user);
$message="<font color=green size=1>ออกจากระบบเรียบร้อย</font><br /><font color=#666666 size=1>กรุณากลับมาเยือนเราอีกครั้ง</font>";
} else { //ตรวจสอบชื่อกับฐานข้อมูล
//ค่ากำหนดของ ฐานข้อมูล
$host="localhost";
$username="root";
$password="";
$dbname="mydb";
$tablename="tbuser";
//เรียกข้อมูล - Member -
$db = mysql_connect($host,$username,$password) or die ("ไม่สามารถติดต่อกับฐานข้อมูลได้ในขณะนี้");
$sql = "select * from $tablename where user = '$user' AND passwd = '$passwd'";
$query = mysql_db_query($dbname,$sql) or die ("ไม่สามารถเรียกฐานข้อมูลสมาชิกได้ในขณะนี้");
$fetch = mysql_fetch_array($query);
$num = mysql_num_rows($query);
mysql_close($db);
if ($num != 0) { //ชื่อ และ รหัสผ่านถูกต้อง
//login สำเร็จ
} else if (empty($action)) { //ครั้งแรก ไม่ได้ใส่ action มา
$message="<font color=#666666 size=1>ยินดีต้อนรับ สู่เว็บไซต์<br /><font color=green>g-O-r-a-g-o-d.com</font></font>";
unset($user);
} else {
//ชื่อหรือ รหัสผ่านไม่ถูกต้อง
$message="<font color=red size=1>ชื่อ หรือ รหัสผ่าน ไม่ถูกต้อง</font>";
unset($user);
}
}
echo "<table cellspacing=5 cellpadding=0 width=100%> ";
if (isset($user)) { // แสดงข้อความต้อนรับ
echo "<tr><td align=center><font color=#666666 size=1>ยินดีต้อนรับ คุณ <font color=green>$user</font> เข้าระบบ</font></td></tr> ";
echo "<tr><td align=center><input type=button value=ออกจากระบบ class=red title=\"ออกจากระบบ ชั่วคราว\" onclick=\"check_user('', '', 'logout')\"></td></tr> ";
} else { // แสดงฟอร์ม login
if (isset($message)) echo "<tr><td align=center colspan=2>$message</td></tr> ";
else echo "<tr><td align=center colspan=2><font size=1><font color=green>ผู้มาเยือน</font> กรุณาเข้าระบบ</font></font></td></tr> ";
echo "<tr><td align=right><font color=#555555 size=1>user : </font></td><td><input size=15 type=text name=user maxlength=15></td></tr> ";
echo "<tr><td align=right><font color=#555555 size=1>passwd : </font></td><td><input size=15 type=password name=passwd maxlength=15></td></tr> ";
echo "<tr><td align=right></td><td><input type=\"submit\" name=\"submit\" value=\"เข้าระบบ\" class=\"red\" title=\"สมาชิก เข้าระบบ\" /></td></tr> ";
}
echo "</table> ";
?>
|
|
|
|
|
Date :
2010-10-13 15:36:41 |
By :
คนปลูกผัก |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 04
|