Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,028

HOME > PHP > PHP Forum > การติดตาม user ใน ระบบ login เพื่อตรวจสอบความคงอยู่ของ user



 

การติดตาม user ใน ระบบ login เพื่อตรวจสอบความคงอยู่ของ user

 



Topic : 009958

Guest




คือว่าผมมีปัญหาครับ ไม่ทราบว่าผมจะต้องทำยังไงหรือใช้คำสั่งอะไร สำหรับการติดตาม user ใน ระบบ login เพื่อตรวจสอบความคงอยู่ของ user รายนั้น ๆ ในระบบของเรา โดยที่สามารถคลิกลิงค์อื่นโดยไม่ฟ้องว่าต้องให้ล็อกอินใหม่อะครับ ผมไปดูในเว็บเห็นเค้าก็บอกว่าใช้ session กับ cookies ใช่มั้ยครับ แต่ผมทำไม่เป็นครับ ยังไงรบกวนอาจารย์ช่วยบอกให้หน่อยนะครับ ถ้าได้เป็นโค้ดจะดีมากเลยครับ(ถ้าได้โค้ดมาจริงๆ ช่วยบอกด้วยนะครับว่าต้องเอาไว้ตรงไหนบ้างครับ) ขอบคุณมากครับ



Tag : - - - -







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 12 ก.ย. 2549 12:43:01 By : arm View : 2308 Reply : 7
 

 

No. 1

Guest


คือที่ผมบอกข้างบนอะครับ โค้ดมันมีดังข้างล่างนี้อะครับ ซึ่งเมื่อผมทำการล็อกอินเข้าไปแล้วมันก็เข้าได้นะครับ แต่พอผมไปคลิกลิงค์ที่เมนูด้านข้างซึ่งลิงค์ไปยัง choose2.php มันก็ให้ผมล็อกอินใหม่ครับ อย่างนี้ผมต้องทำยังไงอะครับ ซึ่งโดยที่ผมอยากจะให้เมื่อล็อกอินเข้าไปแล้วสามารถคลิกลิงค์ต่างๆในเมนูด้านข้างเข้าไปดูได้เลย (ซึ่งในกรณีตอนที่ยังไม่ได้ล็อกอินไม่สามารถเข้าไปดูได้ โดยที่จะต้องทำการล็อกอินก่อนเสมอครับ) ช่วยบอกรายละเอียดให้หน่อยนะครับเพราะว่าไม่เข้าใจจริงๆ ครับ ขอบคุณมากๆ นะครับ

อันนี้คือ โค้ด nisitlogin.php ครับ
<? include("header.php");?>
<? include("leftbox.php");?>
<div id="TEXT">
<ul class="Path">
<li><a href="index2.php">หน้าแรก</a></li>
<li><?=$word?></li>
</ul>

<title>ระบบส่งการบ้าน ผ่าน Internet :: ภาควิชาสารสนเทศ</title>
<meta http-equiv="Content-Type" content="text/html; charset=tis-620">
<link rel="stylesheet" href="/main.css">
<style type="text/css">
<!--
.hwmenu { font-family: "Microsoft Sans Serif", "MS Sans Serif"; font-size: 10pt; text-decoration: none}
.hwmenu a{ font-family: "Microsoft Sans Serif", "MS Sans Serif"; font-size: 10pt; text-decoration: none; color: #0066FF}
.hwmenu a:hover{ font-family: "Microsoft Sans Serif", "MS Sans Serif"; font-size: 10pt; text-decoration: underline}
-->
</style>

</head>


<br><br>
<td align="center">

<table border="0" cellspacing="0" cellpadding="0" align="center">
<tr>
<td width="8" height="8"><img src="border_10.gif" width="8" height="8"></td>
<td background="border_11.gif" height="8" width="377"></td>
<td width="12" height="8"><img src="border_12.gif" width="13" height="8"></td>
</tr>
<tr>
<td background="border_20.gif" width="8"></td>
<td background="border_21.gif" class="normal" style="padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px" valign="top">


<p><font color="#993300">นักศึกษาเข้าสู่ระบบ</font></p>
<form name="checkForm" Form action="choose2.php" method="post" onsubmit="return check();">
<table border="0" align="center" cellspacing="1" cellpadding="0" width="410">
<tr>
<td class="normal" width="88" align="right"><font color="#CC6600">User name </font></td>
<td width="310">
<input type="text" name="login_name" style="width:300px">
</td>
</tr>
<tr>


<td class="normal" width="88" align="right"><font color="#CC6600">Password </font></td>
<td width="310">

<input type="password" name="password1" style="width:300px">
</td>
</tr>



<tr align="center">

<td class="normal" colspan="2" height="30">

<input type="submit" name="Submit" value="เข้าสู่ระบบ" style="width:100px; height:25px">
<input type='button' value="ขอรับรหัสผ่าน" onclick="location.href='sendpasswd.php'">

</td>
</tr>

</table>

<div align="center"><font size=2 color="#990033">* ในกรณีที่นักศึกษาลืมรหัสผ่านหรือยังไม่ได้ลงทะเบียน สามารถขอรหัสผ่านใหม่ได้ทางอีเมลล์โดย<a href=sendpasswd.php> คลิกที่นี่</a> *</font>
</div>
</td>
<td background="border_22.gif" width="12"></td>
</tr>
<tr>
<td width="8" height="13"><img src="border_30.gif" width="8" height="13"></td>
<td background="border_31.gif" height="13" width="377"></td>
<td width="12" height="13"><img src="border_32.gif" width="13" height="13"></td>
</tr>
</table></form>
</td>
</tr>
</table>


</div>
</div>

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

อันนี้คือโค้ด choose2.php ครับ

<?
ob_start();
session_start();
if(empty($login_name)) // ตรวจสอบว่าผ่านการ login หรือไม่
{
header('location:nisitlogin.php');
exit();
}

?>


<?php
$hostname="localhost";
$user="";
$password="";
$dbname="member";
$tblname="member";
$auth=false;
if (isset($user) and isset($password1))
{
mysql_connect("$hostname", "$username", "$password") or die ("ติดต่อเซิร์ฟเวอร์ไม่ได้");
mysql_select_db($dbname) or die("เลือกฐานข้อมูลไม่ได้");
$sql = "SELECT * FROM member WHERE login_name = '$login_name' AND password1 = '$password1'";
$result = mysql_query($sql) or die ("เอ็กซิคิวต์คิวรีไม่ได้");
$num = mysql_numrows($result);
if ($num !=0)
{
$auth = true;
}
}
if (! $auth)
{
header('HTTP/1.0 401 Unauthorized');
echo "Username หรือ Password ไม่ถูกต้องครับ";
echo "<br><br><input type='button' value='ย้อนกลับไปแก้ไข' onclick='history.back();'>" ;
exit;
}
else
{

$sql = "UPDATE member SET visited=visited+1 WHERE login_name='$login_name';";
$result = mysql_query($sql);

}
mysql_close();
?>

<? include("header.php");?>
<? include("leftbox2.php");?>

<script language="JavaScript">
<!--

function Clock() {

window.setTimeout( "Clock()", 1000 );

now = new Date();
localtime = now.toString();
hours = now.getHours();
mins = now.getMinutes();
secs = now.getSeconds();

self.status = hours + ":" + mins + ":" + secs + " ===> ยินดีต้อนรับครับ<===".toString();

}
Clock()
// -->
</script>
<script language=VBScript>
Dim Bar, Line, SP
Bar = 0
Line = "|"
SP = 100

Function Window_onLoad()
Bar = 95
SP = 10
End Function

Function Count()
If Bar < 100 Then
Bar = Bar + 1
Window.Status = "Loading : " & Bar & "%" & " " & String(Bar, Line)
setTimeout "Count()", SP
Else
Window.Status = "===> ระบบส่งการบ้าน ผ่าน Internet :: ภาควิชาสารสนเทศ <===" // ใส่ข้อความที่ต้องการให้ขึ้นที่ STATUSBAR หลังจากแสดงแถบ LOAD เสร็จแล้ว
Document.Body.Style.Display = ""
End If
End Function

Call Count()
</script>
<script language="Javascript">

var tt = 0;
var FMess = new Array("ยินดีต้อนรับคุณเข้าสู่","=> ระบบส่งการบ้าน ผ่าน Internet :: ภาควิชาสารสนเทศ <= ครับ")

function FTitle()
{
document.title = FMess[tt]
tt = (tt < (FMess.length -1)) ? tt + 1 : 0;
setTimeout('FTitle()',700);
}
FTitle();
</script>
<div id="TEXT">

<ul class="Path">
<li><a href="index2.php">หน้าแรก</a></li>
<li><?=$word?></li>
</ul>

<hr width="100%">
<h1>ยินดีต้อนรับ</h1>
<? include("choose.php");?>

</div>
</div><SCRIPT language=javascript>ap_showWaitMessage('waitDiv', 0);</SCRIPT> <br>
<? include("footer.php");?>

ขอบคุณมากๆ นะครับ







Date : 12 ก.ย. 2549 12:44:03 By : arm
 


 

No. 2

Guest


ปกติผมทำแบบให้มันเก็บเป็น session มันก็ไม่เรียกใหม่นิ ขี้เกียจดูโค๊ดง่า ยาว
Date : 12 ก.ย. 2549 23:26:35 By : knight
 

 

No. 3

Guest


1. Login.php

<?
$username =$_POST["username"];
$password = $_POST["password"];
if(!isset($username) || !isset($password))
header("location: login.php");
$sql = "select * from user where username ='$username' && password='$password'";
$result = mysql_query($sql);
$count = mysql_num_rows($result);

if($count==0){
echo "<script>alert(' Username หรือ Password ไม่ถูกต้องค่ะ!!! ');history.back();</script>";
}
else{
//สร้าง session เพื่อเอาไปป้องกันการlink หน้าเวปนั้นโดยตรง

session_start();
$_SESSION[sess_userid] = session_id();
$_SESSION["username"] = $row["username"];
header("location: welcome.php");

}
?>

2. chksession.php

<?
session_start();
$sess_userid = $_SESSION[sess_userid];
$username = $_SESSION[username];
if ($sess_userid<>session_id() || $username =="") {
echo "<script>alert('กรุณา Login ก่อนค่ะ!!!');window.location ='login.php';</script>";
exit();
}
?>

3. ไปใช้ ก็ใส่ไปที่บรรทัดแรกของแต่ละของแต่ File แค่นั้นเอง

<? include("chksession.php"); ?>


Date : 13 ก.ย. 2549 09:38:03 By : AAA
 


 

No. 4

Guest


ขอบคุณมากนะครับ เดี๋ยวจะลองดูนะครับ
Date : 13 ก.ย. 2549 17:04:08 By : arm
 


 

No. 5

Guest


คุณ AAA ครับ คือ ผมทำตามที่คุณ AAA บอกแล้วอะครับ แต่พอมันล็อกอินผ่านแล้วเข้าไปที่ listnisit.php มันก็ขึ้น 'กรุณา Login ก่อนค่ะ!!!' แล้วก็กลับไปหน้าล็อกอินอะครับ คุณ AAA ช่วยดูให้หน่อยครับว่าผมทำผิดตรงไหนครับ หรือว่าต้องเพิ่มตรงไหนบ้างครับ ขอบคุณมากครับ


45.php
-----------------
<form action="login4.php" method="post">
Username<input type="text" name="login_name" style="width:300px"> <br>
password<input type="password" name="password1" style="width:300px"><br>


<input type="submit" name="Submit" value="เข้าสู่ระบบ" style="width:100px; height:25px">


</form>



----------------------
login4.php
---------------------
<?
$login_name =$_POST["login_name"];
$password1 = $_POST["password1"];
if(!isset($login_name) || !isset($password1))
header("location: 45.php");

$hostname="localhost";
$user="ODBC";
$password="";
$dbname="member";
$tblname="member";
mysql_connect("$hostname", "$username", "$password") or die ("ติดต่อเซิร์ฟเวอร์ไม่ได้");
mysql_select_db($dbname) or die("เลือกฐานข้อมูลไม่ได้");
$sql = "select * from member where login_name ='$login_name' && password1='$password1'";
$result = mysql_query($sql);
$count = mysql_num_rows($result);

if($count==0){
echo "<script>alert(' Username หรือ Password ไม่ถูกต้องค่ะ!!! ');history.back();</script>";
}
else{
//สร้าง session เพื่อเอาไปป้องกันการlink หน้าเวปนั้นโดยตรง

session_start();
$_SESSION[sess_userid] = session_id();
$_SESSION["login_name"] = $row["login_name"];
header("location: listnisit.php");

}
?>


------------------------
chksession.php
------------------------
<?
session_start();
$sess_userid = $_SESSION[sess_userid];
$username = $_SESSION[login_name];
if ($sess_userid<>session_id() || $login_name =="") {
echo "<script>alert('กรุณา Login ก่อนค่ะ!!!');window.location ='45.php';</script>";
exit();
}
?>



----------------------
listnisit.php
--------------------
<? include("chksession.php"); ?>
<html>
<body>
<?
$host="localhost";
$username="";
$password="";
$db="member";
$tb="member";
mysql_connect( $host,$username,$password) or die ("ติดต่อกับฐานข้อมูล Mysql ไม่ได้ ");

mysql_select_db($db) or die("เลือกฐานข้อมูลไม่ได้"); /* ทำการเลือกฐานข้อมูลก่อน */

$sql="Select * From $tb";

$db_query=mysql_db_query($db,$sql);

$num_rows=mysql_num_rows($db_query); /* นับ Reccord ที่พบ */

?>
<table width="70%" border="1" align="center">
<tr>
<td width="9%">
<div align="center">รหัสนักศึกษา</div>
</td>
<td width="18%">
<div align="center">ชื่อ</div>
</td>
<td width="18%">
<div align="center">นามสกุล</div>
</td>
<td width="10%">
<div align="center">ห้อง</div>
</td>
<td width="5%">
<div align="center">งาน</div>
</td>
</tr>
</table>
<?

$a=0;
while($a < $num_rows)
{
$result = mysql_fetch_array($db_query);
$studentID=$result[studentID];
$name=$result[name];
$surname=$result[surname];
$name=$result[name];
$surname=$result[surname];
$sec=$result[sec];
$tel=$result[tel];
$address=$result[address];
?>
<table width="70%" border="1" align="center">
<tr>
<td width="8%">
<div align="center"><?echo"$studentID";?></div>
</td>
<td width="16%">
<div align="left">
<?echo"$name";?>
</div>
</td>
<td width="16%">
<?echo"$surname";?>
</td>
<td width="9%">
<div align="center"><?echo"$sec";?></div>
</td>
<td width="4%">
<div align="center"><a href="Sample2.php?studentID=<?echo"$studentID"; ?>">edit</a></div>
</td>
</tr>
</table>
<?
$a++;
}
echo"<center><br>จำนวน Reccord = $num_rows</center>";
mysql_close();
?>
</body>
</html>





Date : 13 ก.ย. 2549 17:55:58 By : arm
 


 

No. 6

Guest


ใน file login4.php
----------------------
login4.php
---------------------

ลองเปลี่ยน บรรทัดนี้ดูน่ะ $_SESSION["login_name"] = $row["login_name"];

เป็น $_SESSION["login_name"] = $login_name;


Date : 14 ก.ย. 2549 15:42:52 By : AAA
 


 

No. 7

Guest


งือๆๆ...เป็นเหมือนคุณ arm คห 5 เลยค่ะ คุณ AAA ลองเปลี่ยน

บรรทัดนี้ $_SESSION["login_name"] = $row["login_name"];

เป็น $_SESSION["login_name"] = $login_name;

ก็ยังไม่หายค่ะ ยังฟ้องให้ login เหมือนเดิมน่ะค่ะ ...วานช่วยดูโค้ดอีกทีนะค๊าาา

.....................ขอบคุณมากกกกกกกกกกกกกกกกกกค่ะ...................................
Date : 21 พ.ย. 2550 14:52:48 By : งิดงิ๊ววว
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : การติดตาม user ใน ระบบ login เพื่อตรวจสอบความคงอยู่ของ user
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 01
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่