|
|
|
ช่วยดูให้หน่อยค่ะ if session ผิดตรงไหน ค่ะ *-* สมุติเราจะไปหน้า start.php ส่วนระบบมี admin |
|
|
|
|
|
|
|
Code (PHP)
<?
session_start();
if (!isset($_SESSION["session_name"])) {
?>
<script>
alert('กรุณาทำการ Login เข้าระบบก่อน');
</script>
<meta http-equiv='refresh' content='0;URL=not_login.php'>
<?
}
?>
ประมานนี้รึเปล่าครับ
|
|
|
|
|
Date :
2010-01-22 23:36:07 |
By :
hengnarak |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ถ้า session_name มี สามตัวแปลละค่ะ
Code (PHP)
<?
session_start();
if (!isset($_SESSION["login_true_admin"])) &&(!isset($_SESSION["login_true_dc"])) &&(!isset($_SESSION["login_true_as"])) {
?>
<script>
alert('กรุณาทำการ Login เข้าระบบก่อน');
</script>
<meta http-equiv='refresh' content='0;URL=not_login.php'>
<?
}
|
|
|
|
|
Date :
2010-01-23 12:03:22 |
By :
Ninezy |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แล้วที่เอามาให้ดูมันใช้ไม่ได้หรือครับ แต่ที่ผมเคยใช้ผมให้มันตรวจสอบที่ status เอาอ่ะครับประประมาณเนีย
Code (PHP)
if($_SESSION['status_ad']!='1' && $_SESSION['status_ad']!='2' && $_SESSION['status']!='3' && $_SESSION['status']!='4' && $_SESSION['status']!='5'){
echo "<script language=\"JavaScript\">alert('ขออภัยค่ะ! กรุณากลับไปเข้าสู่ระบบใหม่ นะค่ะ')</script>";
echo "<meta http-equiv='refresh' content='0;url=../.'>" ; //ถ้ายังให้กลับไปที่หน้าlogin
exit() ;
}
|
|
|
|
|
Date :
2010-01-23 13:12:18 |
By :
somparn |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
หมายถึง from ดักค่าอ่าค่ะ
ปกติเราดักแบบนี้ค่ะ
Login Admin.php
Code (PHP)
<?php
session_start() ;
if(!session_is_registered("login_true_admin")) {
echo "<meta http-equiv='refresh' content='0;url=../admin/login.php'>" ;
exit() ;
}
?>
อันนี้อีก from
Login member.php
Code (PHP)
<?php
session_start() ;
if(!session_is_registered("login_true_dc")) {
echo "<meta http-equiv='refresh' content='0;url=../dc/login.php'>" ;
exit() ;
}
?>
อันนี้อีก from
Login user.php
Code (PHP)
<?php
session_start() ;
if(!session_is_registered("login_true_as")) {
echo "<meta http-equiv='refresh' content='0;url=../as/login.php'>" ;
exit() ;
}
?>
เก็บ session_register เป็นชื่อ แต่ไม่ได้เก็บ ใน status แก้ไขไงดีค่ะ
แต่ใน status ก็มีแยกบ่งบอกว่าเป็น admin หรือ dc หรือ as
|
|
|
|
|
Date :
2010-01-23 13:53:51 |
By :
Ninezy |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอดูโค้ด Login หน่อยได้ไหมครับผมยังแปลกใจอยู่ว่าทำไมไม่ได้
แล้วถ้าตรวจสอบแค่อันเดียวละได้เปล่าครับเช่น
Code (PHP)
session_start() ;
if(!session_is_registered("login_true_admin")) {
echo "<meta http-equiv='refresh' content='0;url=../admin/login.php'>" ;
exit() ;
}
ตัวเนียได้ไหมเอ๋ยถ้าอันเดียวนะถ้าได้ตัวอย่างแรกที่เอามาให้ดุก็น่าจะได้นะครับถ้าไม่ได้ยังไงเดียวจะลองเขียนแล้วทดสอบดูให้อีกทีนะครับ
ถ้าผมให้คำตอบผิดก็ขออภัยนะครับกำลังเบลอกับระบบตัวเอง 555
|
|
|
|
|
Date :
2010-01-23 14:23:44 |
By :
somparn |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
session_start() ;
if(!session_is_registered("login_true_admin")) {
echo "<meta http-equiv='refresh' content='0;url=../admin/login.php'>" ;
exit() ;
}
สงสัยครับต้องการทำเงื่อนไขอะไรอยู่??
ผมแปลจากโค้ดข้างบนได้แบบนี้ครับ
ถ้าไม่ใช่เป็นการล็อกอินของแอดมินให้รีเฟรสไปหน้า ../admin/login.php
|
|
|
|
|
Date :
2010-01-23 14:23:47 |
By :
xbeginner01 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Login.php
Code (PHP)
<?
session_start();
?>
<html>
<head>
<title>ระบบคลินิกทันตกรรม</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-874">
<style type="text/css">
<!--
.style1 {
color: #CCCCCC;
font-weight: bold;
}
.style2 {color: #FFFFFF}
.style3 {color: #999999}
.style4 {color: #CCCCCC}
-->
</style>
</head>
<p> </p>
<p> </p>
<form name="form1" method="post" action="login2.php">
<table width="326" border="0" align="center" bgcolor="#CCCCCC">
<tr>
<td width="123" height="175"><img src="../img/batmenu2.jpg" width="116" height="173"></td>
<td width="203" bgcolor="#006699"><table width="200" border="1">
<tr>
<td height="30" background="../img/login.jpg"> </td>
</tr>
<tr>
<td><span class="style1"><span class="style2">U</span>se<span class="style3">r</span></span>
<input name="user_userz" type="text" maxlength="10">
</tr>
<tr>
<td><strong><span class="style2">P</span><span class="style4">as</span><span class="style3">s</span></strong>
<input name="user_pass" type="password" maxlength="17">
</tr>
<tr>
<td><label>
<input type="submit" name="Submit" id="button" value="Login">
</label></td>
</tr>
</table>
<table width="200" border="0">
<tr>
<td> </td>
</tr>
<tr>
<td><div align="right"><span class="style2">ระ<span class="style4">บบ<span class="style3">คล</span></span>ิ<span class="style3">นิกท</span>ั<span class="style4">นตกร</span>รม</span></div></td>
</tr>
</table></td>
</tr>
</table>
Login2.php
Code (PHP)
<?
session_start();
include("../config.inc.php");
mysql_connect($hostname, $user, $password) or die("ติดต่อฐานข้อมูลไม่ได้");
mysql_select_db($dbname) or die("เลือกฐานข้อมูลไม่ได้");
mysql_query("SET NAMES 'tis620'");
// ตรวจสอบ กรณีที่เรียกหน้านี้ขึ้นมาเลยโดยที่กรอกข้อมูลไม่ครบ
if($user_userz=="" ||$user_pass=="") {
echo "<tr> <td align=center bgcolor=#EAECEA><br><b>กรุณากรอกข้อมูลให้ครบ</b><br>";
echo "<a href=javascript:history.back(); >กลับไปแก้ไข</a><br><br>";
exit() ;
}
// คำสั่ง SQL และสั่งให้ทำงาน
$sql = "select * from tb_user where user_user='$user_userz' and user_pass='$user_pass' and user_status='admin' "; //เช็คค่าข้อมูลที่ส่งมาจากฟอร์ม
$dbquery = mysql_db_query($dbname, $sql);
session_start();
// หาจำนวนเรกคอร์ดข้อมูล
$num_rows = mysql_num_rows($dbquery);
if($num_rows==1){
$strFileName = "log_login_admin.txt";
$objFopen = fopen($strFileName, 'a');
$user_userz= $_POST['user_userz'];
$user_userz= $_GET['user_userz'];
$user_userz = $_REQUEST['user_userz'];
$strText = date("Y-m-d H:i:s")." Login..\r\n";
//$strText2=$user_user= $_POST['user_user'];
fwrite($objFopen,"Username:");
fwrite($objFopen,$user_userz);
fwrite($objFopen,"---Date:");
fwrite($objFopen,$strText);
fclose($objFopen);
$login_true_admin = $user_userz;
session_register("login_true_admin") ;
$login_true_dc = $user_userz;
session_register("login_true_dc") ;
$login_true_as = $user_userz;
session_register("login_true_as") ;
header("location:member_detail.php"); //ไปไปตามหน้าที่คุณต้องการ
}else {
header("location: error.php"); //ไม่ถูกต้องให้กับไปหน้าเดิม
}
?>
อันนี้เป็น folder admin ค่ะ เรา ลักไก่ ทำ login แยก folder ค่ะ
------------------------------------------------------------------------------------------------------------
Dc/Login.php เหมือนหน้าแรก
Dc/Login2.php
Code (PHP)
<?
session_start();
include("../config.inc.php");
mysql_connect($hostname, $user, $password) or die("ติดต่อฐานข้อมูลไม่ได้");
mysql_select_db($dbname) or die("เลือกฐานข้อมูลไม่ได้");
mysql_query("SET NAMES 'tis620'");
// ตรวจสอบ กรณีที่เรียกหน้านี้ขึ้นมาเลยโดยที่กรอกข้อมูลไม่ครบ
if($user_userz=="" ||$user_pass=="") {
echo "<tr> <td align=center bgcolor=#EAECEA><br><b>กรุณากรอกข้อมูลให้ครบ</b><br>";
echo "<a href=javascript:history.back(); >กลับไปแก้ไข</a><br><br>";
exit() ;
}
// คำสั่ง SQL และสั่งให้ทำงาน
$sql = "select * from tb_user where user_user='$user_userz' and user_pass='$user_pass' and user_status='dc' "; //เช็คค่าข้อมูลที่ส่งมาจากฟอร์ม
$dbquery = mysql_db_query($dbname, $sql);
session_start();
// หาจำนวนเรกคอร์ดข้อมูล
$num_rows = mysql_num_rows($dbquery);
if($num_rows==1){
$strFileName = "log_login_dc.txt";
$objFopen = fopen($strFileName, 'a');
$user_userz= $_POST['user_userz'];
$user_userz= $_GET['user_userz'];
$user_userz = $_REQUEST['user_userz'];
$strText = date("Y-m-d H:i:s")." Login..\r\n";
//$strText2=$user_user= $_POST['user_user'];
fwrite($objFopen,"Username:");
fwrite($objFopen,$user_userz);
fwrite($objFopen,"---Date:");
fwrite($objFopen,$strText);
fclose($objFopen);
$login_true_dc = $user_userz;
session_register("login_true_dc") ;
$login_true_as = $user_userz;
session_register("login_true_as") ;
header("location:member_detail.php"); //ไปไปตามหน้าที่คุณต้องการ
}else {
header("location: error.php"); //ไม่ถูกต้องให้กับไปหน้าเดิม
}
?>
-----------------------------------------------------------------------------------------------------------------------------------------
as/Login.php เหมือนหน้าแรก
as/Login2.php
Code (PHP)
<?
session_start();
include("../config.inc.php");
mysql_connect($hostname, $user, $password) or die("ติดต่อฐานข้อมูลไม่ได้");
mysql_select_db($dbname) or die("เลือกฐานข้อมูลไม่ได้");
mysql_query("SET NAMES 'tis620'");
// ตรวจสอบ กรณีที่เรียกหน้านี้ขึ้นมาเลยโดยที่กรอกข้อมูลไม่ครบ
if($user_userz=="" ||$user_pass=="") {
echo "<tr> <td align=center bgcolor=#EAECEA><br><b>กรุณากรอกข้อมูลให้ครบ</b><br>";
echo "<a href=javascript:history.back(); >กลับไปแก้ไข</a><br><br>";
exit() ;
}
// คำสั่ง SQL และสั่งให้ทำงาน
$sql = "select * from tb_user where user_user='$user_userz' and user_pass='$user_pass' and user_status='as' "; //เช็คค่าข้อมูลที่ส่งมาจากฟอร์ม
$dbquery = mysql_db_query($dbname, $sql);
session_start();
// หาจำนวนเรกคอร์ดข้อมูล
$num_rows = mysql_num_rows($dbquery);
if($num_rows==1){
$strFileName = "log_login_as.txt";
$objFopen = fopen($strFileName, 'a');
$user_userz= $_POST['user_userz'];
$user_userz= $_GET['user_userz'];
$user_userz = $_REQUEST['user_userz'];
$strText = date("Y-m-d H:i:s")." Login..\r\n";
//$strText2=$user_user= $_POST['user_user'];
fwrite($objFopen,"Username:");
fwrite($objFopen,$user_userz);
fwrite($objFopen,"---Date:");
fwrite($objFopen,$strText);
fclose($objFopen);
$login_true_dc = $user_userz;
session_register("login_true_as") ;
header("location:member_detail.php"); //ไปไปตามหน้าที่คุณต้องการ
}else {
header("location: error.php"); //ไม่ถูกต้องให้กับไปหน้าเดิม
}
?>
เราสร้าง start/show.php ขึ้นมา โดยเงื่อนไขคือ ให้ admin , dc , as ดูได้ เราลักไก่แบบเก่าไม่ได้ค่ะ
ถ้าทำแบบเดิม ต้องทำ อีก 3 show.php ใช่ไหมค่ะ (admin=show.php) (dc=show1.php) (as=show2.php) อยากให้ทำ show.php อันเดียวไปเลยคะ
|
|
|
|
|
Date :
2010-01-23 14:50:57 |
By :
Ninezy |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เรียนคุณ phpbasic อันเดียวใช้ได้ค่ะ
Code (PHP)
<?php
session_start() ;
if(!session_is_registered("login_true_admin")) {
echo "<meta http-equiv='refresh' content='0;url=../admin/login.php'>" ;
exit() ;
}
?>
|
|
|
|
|
Date :
2010-01-23 14:52:23 |
By :
Ninezy |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เอาคำสั่งนี้ไปไว้ที่ไฟล์ show.php ผลเป็นไงบ้างอ่ะครับ
ถ้าไม่งั้นก็ [email protected] นะครับ
Code (PHP)
session_start() ;
if(!session_is_registered("login_true_admin")) {
echo "<meta http-equiv='refresh' content='0;url=../admin/login.php'>" ;
exit() ;
}
|
|
|
|
|
Date :
2010-01-23 15:37:25 |
By :
somparn |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เอาคำสั่งนี้ไปไว้ที่ไฟล์ show.php ผลเป็นไงบ้างอ่ะครับ
มันก็รันได้ เฉพาะ admin ค่ะ ถ้าเรา login dc หรือ as ก็รันไม่ได้
msn เข้าไม่ได้ค่ะ สงสัยยังไม่ได้ update *-*
|
|
|
|
|
Date :
2010-01-23 19:11:12 |
By :
Ninezy |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
session_start() ;
if( (!session_is_registered("login_true_admin")) && (!session_is_registered("login_true_dc")) && (!session_is_registered("login_true_ac")) ) {
echo "<meta http-equiv='refresh' content='0;url=../admin/login.php'>" ;
exit() ;
}
ถ้าแบบนี้ละได้เปล่า
|
|
|
|
|
Date :
2010-01-23 19:36:52 |
By :
somparn |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ได้แล้วค่ะ ขอบคุณ phpbasic มากค่ะ ทำไมเมื่อเช้าลองแบบนี้แล้ว error นะ - -*
|
|
|
|
|
Date :
2010-01-23 19:49:26 |
By :
Ninezy |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
สงสัยลืมปิดพวก ( ) ละมั่งครับยังไงก็ดีใจด้วยนะครับ
|
|
|
|
|
Date :
2010-01-23 21:07:37 |
By :
somparn |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 01
|