Login page Double Access off করতে methon call করার পর Undefined index, Notice দিচ্ছে

0 votes
asked Oct 18, 2016 in PHP by Kawsar (370 points)

Login page Double Access off করতে methon call করার পর Undefined index, Notice দিচ্ছে

( ! ) Notice: Undefined index: login in C:\wamp64\wamp64\www\CMS\lib\Session.php on line 12
Call Stack
#   Time    Memory  Function    Location
1   0.0012  247896  {main}( )   ...\login.php:0
2   0.0019  259640  Session::checklogin( )  ...\login.php:2
3   0.0029  260576  Session::get( ) ...\Session.php:27

//login.php page

<?php include '../lib/Session.php';
        Session::checklogin();
 ?>
<?php 
        include "../config/config.php"; 
        include "../lib/Database.php"; 
        include "../helpers/format.php"; 
 ?>
 <?php  
        $db = new Database();
        $fm = new format();
?>
<!DOCTYPE html>
<head>
<meta charset="utf-8">
<title>Login</title>
    <link rel="stylesheet" type="text/css" href="css/stylelogin.css" media="screen" />
</head>
<body>
<div class="container">
    <section id="content">
    <?php 
        if ($_SERVER['REQUEST_METHOD'] == 'POST') {
            $username = $fm->validation($_POST['username']);
            $password = $fm->validation(md5($_POST['password']));

            $username = mysqli_real_escape_string($db->link,$username);
            $password = mysqli_real_escape_string($db->link,$password);

            $query = "SElECT * FROM tbl_user WHERE username = '$username' AND password = '$password'";
            $result = $db->select($query);
            if ($result !=false) {
                $value = mysqli_fetch_array($result);
                $row = mysqli_num_rows($result);
                if ($row > 0) {
                    Session::set("login",true);
                    Session::set("username",$value['username']);
                    Session::set("userId",$value['id']);
                    header('Location:index.php');
                }else{
                    echo "<span style= 'color:red'>Resutl Not Found !!</span>";
                }

            }else{
                echo "<span style= 'color:red'>Username or Password not matched !!</span>";
            }

}


     ?>
        <form action="" method="post">
            <h1>Admin Login</h1>
            <div>
                <input type="text" placeholder="Username" required="" name="username"/>
            </div>
            <div>
                <input type="password" placeholder="Password" required="" name="password"/>
            </div>
            <div>
                <input type="submit" value="Log in" />
            </div>
        </form><!-- form -->
        <div class="button">
            <a href="#">Diner-alo.com</a>
        </div><!-- button -->
    </section><!-- content -->
</div><!-- container -->
</body>
</html>

//session class

<?php 
class Session{
    public static function intit(){
        session_start();
    }

    public static function set($key,$value){
        $_SESSION[$key] = $value;
    }
    public static function get($key){

        if ($_SESSION[$key]){
            return $_SESSION[$key];
        }else{
            return false;
        }
    }
    public static function checkSession(){
        self::intit();
        if (self::get("login") == false) {
        self::destroy();
        header('Location:login.php');
        }
    }
    public static function checklogin(){
        self::intit();
        if (self::get("login") == true) {
        header("Location:index.php");
        }
    }

        public function destroy(){
            session_destroy();
            header('Location:login.php');
        }

      }
 ?>

1 Answer

0 votes
answered Oct 19, 2016 by ali (5,800 points)

Please take a look here.

722 questions

656 answers

179 comments

4,717 users

Welcome to IDB Scholars Forum, where you can ask questions and receive answers from other members of the community. It's 100% free.
আইডিবি স্কলারস ফোরামে আপনাকে স্বাগত - প্রোগ্রামিং, ডিজাইন, ডেভেলপমেন্ট, ব্লগিং, ইন্টারনেটসহ তথ্য প্রযুক্তির যাবতীয় বিষয় নিয়ে আলোচনার একটি মুক্ত মঞ্চ হলো এই ফোরাম । এখানে আইসিটি বিষয়ক আপনার প্রশ্ন, উত্তর এবং অভিজ্ঞতা শেয়ার করুন, আলোচনা করুন এবং সমাধান নিন। দেশের তরুণ প্রজন্মকে আইসিটিতে আগ্রহী করাই আমাদের মূল লক্ষ্য।
** ইংলিশ বা বাংলা যে কোনো ভাষায় আপনি এই ফোরামে আলোচনা করতে পারবেন। তবে বাংলাকে ইংরেজি অক্ষরে লিখবেন না।
  1. tulbadex

    110 points

    0 answers

  2. mealbulb9

    100 points

    0 answers

  3. seat1temper

    100 points

    0 answers

  4. roll0fender

    100 points

    0 answers

  5. KeiraX382741

    100 points

    0 answers

...