Page 1 of 1

เกี่ยวกับ ระบบ admin ครับ ใครรู้ ช่วยทีครับ

Posted: 24/07/2011 12:46 am
by dexjanghan
คือว่า ผมทำหน้า login มา แล้วไปยัง โฟลด์เดอร์ ชื่อ Admin ในนั้นมี ไฟร มากมาย ที่เริ่มต้นด้วย index.php
ผมอยากให้ระบบของผม แจ้งเมื่อเข้าพาธ ทาง http://localhost/......./admin โยไม่ได้ทำการ loging เข้าไปใช้งานไม่ได้ ให้ทำการๅ login ก่อน ต้องทำยังไงครับ
ผมใช้ Session ยังไม่เป็น ช่วยชี้แนะผมด้วย แล้วส่วนของ logout ก็ทำแล้ว

ซึ่งระบบที่ผมทำ เป็นเพียง Loin บังหน้าเฉยๆ

ด้วยความนับถือ

Re: เกี่ยวกับ ระบบ admin ครับ ใครรู้ ช่วยทีครับ

Posted: 24/07/2011 1:19 pm
by mindphp
ในหน้า admin ทุกหน้าต้องเช็ค

Code: Select all

if(!isset($_SESSION['check_admin'])){
  // ไปหน้า login 
}

Re: เกี่ยวกับ ระบบ admin ครับ ใครรู้ ช่วยทีครับ

Posted: 08/08/2011 2:49 am
by dexjanghan
ผมอลงแล้วครับไม่ได้อ่ะ สงสัยผมวางผิดที่มั๊งคับ
ถ้ามีตัวอย่างระบบ ที่เกี่ยวกับ Login ของ admin สักตัว
ผมคงเจอทางสว่างคับ

Re: เกี่ยวกับ ระบบ admin ครับ ใครรู้ ช่วยทีครับ

Posted: 08/08/2011 11:16 am
by touleg
สมมุติว่ามีหน้าดังนี้นะครับ

index.php, login.php, หน้าอื่นๆใน admin folder

เวลาเราเปิดเข้ามาที่ admin มันจะไปเรียกไฟล์ index.php ขึ้นมา ซึ่งหน้านี้ไม่ใช่หน้าล็อกอิน ดังนั้งจะต้องมีการตรวจสอบที่หน้าทุกหน้าที่ไม่ใช่หน้าล็อกอินในโฟลเดอร์ admin
โดยการตรวจสอบก็คือ ถ้ายังไม่ได้ล็อกอินก็ให้ redirec ไปที่หน้า login.php

ให้เราเขียนโค้ดไว้บนสุดของ หน้าทุกหน้าที่จะเช็ค ดังนั้นสร้างไฟล์ขึ้นมา 1 ไฟล์แล้วเขียนโค้ดตรวจสอบลงไป แล้วค่อย include มาใช้ในแต่ละหน้าจะได้ไม่ต้องเขียนหลายครั้ง

โค้ดตัวอย่าง

ไฟล์ config.php เอาไว้ติดต่อฐานข้อมูล

Code: Select all

<?php
session_start(); //เปิดใช้ session
$dbhost = "localhost";
$dbname = "spmall"; //ชื่อฐานข้อมูล
$dbuname = "root";
$dbpasswd = "1234";

$dbconn = @mysql_connect($dbhost,$dbuname,$dbpasswd) or die("Error : ".mysql_error());
@mysql_select_db($dbname) or die("Error : ".mysql_error());
@mysql_query("SET NAMES utf8") or die("Error : ".mysql_error());;
?>
ตัวอย่างโค้ดตรวจสอบ
auth.php

Code: Select all

<?php 
if(session_is_registered('adminuname'))
{
    $uname = $_SESSION['adminuname'];
    $passwd = $_SESSION['adminpasswd'];
    
    $passwd_en = md5($passwd);
    
    $sql = "select member_username,member_password from member where member_username = '$uname' and member_password = '$passwd_en' and membertype_id='1'";
    $result = mysql_query($sql);
    if(!$result)
    {
        echo "ติดต่อฐานข้อมูลไม่ได้";
    }else{
        if(mysql_num_rows($result)==0)
        {
            echo "<script type=\"text/javascript\">window.location='login.php';</script>";
            exit();
        }else{
            $data = mysql_fetch_array($result);
            $username = $data['member_username'];
            $password = $data['member_password'];
            if($username != $uname and $password != $passwd_en)
            {
                echo "<script type=\"text/javascript\">window.location='login.php';</script>";
                exit();
            }
        }
    }
}else{
    echo "<script type=\"text/javascript\">window.location='login.php';</script>";
    exit();
}
?>
ตัวอย่างการนำไปใช้

Code: Select all

<?php
include("config.php");
include("auth.php");

//โค้ดการทำงานของหน้านี้
?>

Re: เกี่ยวกับ ระบบ admin ครับ ใครรู้ ช่วยทีครับ

Posted: 19/08/2011 1:38 am
by dexjanghan
ขอขอบคุณ คุณ touleg มากครับ เข้าในแล้วครับผม