2017-06-14 56 views
0

我相信一切都是正确的。一直在扼杀我的脖子。调用成员函数LoggedIn()null

这里是index.php。我只是包含这些文件,并从functions.php调用函数

我不知道发生了什么。 这是一个properlly书面

<?php 

    if(basename($_SERVER['SCRIPT_FILENAME']) == basename(__FILE__)) die("Access denied"); 
    ob_start(); 

    require_once 'includes/app/config.php'; 
    require_once 'includes/app/init.php'; 

    if (!(empty($maintaince))) { 
     header('Location: maintenance.php'); 
     exit; 
    } 





    if (!($user -> LoggedIn()) || !($user -> notBanned($odb))){ 
      header('location: relogin.php'); 
      die(); 
     } 

    ?> 

这里是functions.php的

<?php 

class user { 

    function realIP(){ 
    switch(true){ 
     case (!empty($_SERVER['HTTP_X_REAL_IP'])) : return $_SERVER['HTTP_X_REAL_IP']; 
     case (!empty($_SERVER['HTTP_CLIENT_IP'])) : return $_SERVER['HTTP_CLIENT_IP']; 
     case (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) : return $_SERVER['HTTP_X_FORWARDED_FOR']; 
     default : return $_SERVER['REMOTE_ADDR']; 
    } 
    } 



    //Kijkt of de gebruiker zijn account geblockeerd is 
    function isBanned($odb){ 
    $SQL = $odb -> prepare("SELECT `status` FROM `users` WHERE `ID` = ?"); 
    $SQL -> execute(array($_SESSION['ID'])); 
    $status = $SQL -> fetchColumn(0); 
    if ($status == 0){ 

     return true; 

    } else { 
     //Blockeert de gebruiker, En logt hem uit 
     session_destroy(); 

     return false; 

    } 

} 

    //Kijkt of de gebruiker admin is 
    function isadmin(){ 

    $SQL = $odb -> prepare("SELECT `rank` FROM `users` WHERE `ID` = ?"); 
    $SQL -> execute(array($_SESSION['ID'])); 
    $rank = $SQL -> fetchColumn(0); 
    if ($rank == 0){ 

     return true; 

    } else { 

     return false; 

    } 
} 





//de login functie (bewaart cookies en http header data door middel van @session_start();) 
function LoggedIN(){ 


    @session_start(); 
    if (isset($_SESSION['username'], $_SESSION['ID'])){ 

    return true; 

} else { 

    return false; 

    } 

} 
} 
?> 
+0

这是什么问题?这并不清楚。 – Carcigenicate

+2

*“我确定一切都是正确的。”* ...我敢肯定这不是你的'$ user'对象是'null' – CD001

+1

你在哪里定义'$ user'变量? – aynber

回答

0

你必须把你方法的loggedIn()的用户类。

正如我看到你把你的方法放在外面,所以它可以在课堂外像一个经典的函数一样调用。

+0

我改变了代码,但问题仍然存在。 –

+0

依照你的帖子 – fxlacroix

+0

仍然没有在用户级别中。我调整了大括号。 –

相关问题