2013-12-21 2 views
0

PHP에서 찾을 수없는 클래스에 문제가 있습니다.포함되어있는 동안 PHP 클래스를 찾을 수 없습니다.

내가해야 할 일은 'require_once'가 'require_once의 다른 모든 파일'인 파일입니다. 로드 할 때 문제가 표시되지 않습니다. 하지만 내 함수를 호출을 시작할 때, 나는 다음과 같은 오류 얻을 (사용자 : verificate을()) : 만 에코 방법으로 문자열을 출력하는 기능을 간단한 클래스를 추가했습니다

Fatal error: Class 'Users' not found in /Applications/XAMPP/xamppfiles/htdocs/sparks/dashboard.php on line 4 

테스트하려면를 . 이것은 문제가이 클래스와 함께 있어야하므로 작동합니다. 이처럼 호출하는 MySql 함수가 작동합니다. 나는에서 MySQL의 클래스에서 비 정적 함수를 호출하고있어 사용자 클래스에서

simple::launch(); 

:

$mySql = new MySql(); 
$mySql->executeQuery('...'); 

간단한 클래스는 내가 (아,이 작품)과 같이 호출 정적 정적 기능을 가지고있다 정적 함수. 이것이 문제가 될 수 있습니까?

그래서 여기에 또 다른 질문은 전통적인 PHP 시작 태그 대신 짧은 PHP 시작 태그를 사용하지 않는 것이 좋습니다.

심지어 약간의 힌트는 나를 도울 수 있습니다. :). 시간 내 줘서 고마워!

편집 : 사용자 클래스에서 관련 코드를 추가했습니다. 이것은 모든 모습 기본적으로 같은 :

<?php 
class Users { 
    public static function authenticate($email, $password) { 
     $mySql = new MySql(); 

     $mySqlResult = $mySql->executeQuery("selectUser", [$email]); 

     ... 
    } 

    public static function isAdmin() { 
     if ($_SESSION['isAdmin']) { 
      return true; 
     } 
     return false; 
    } 
    ... 
} 

편집 2 : 내가 흐름을 보여주기 위해 노력하고있어 :

<?php 
    require_once('code/init.php'); 
    simple::launch(); 
    if (!Users::verify()) { 
     header("Location: index.php"); 
    } 
?> 

: dashboard.php에서 이가 첫 번째 코드 라인 수 있습니다을 간단한 :: launch(); 테스트에 사용한 코드입니다. 이것은 잘 실행됩니다. init.php 파일의 다음 내용은 다음과 같습니다.

<?php 
session_start(); 

require_once('simple.php'); 
require_once('MySql.php'); 
require_once('Users.php'); 
require_once('Projects.php'); 

잘못되었을 때 오류가 표시되므로 파일 이름이 정확합니다.

루트에 dashboard.php가 있습니다. 여기에는 'code'라는 폴더가 있는데이 폴더에는이 모든 파일이 들어 있습니다.

+6

이 사용자 클래스에서 관련 코드를 게시 할 수 있습니까? – Stoic

+1

또한, 그냥 애완 동물이 아니지만 'verificate'은 단어가 아닙니다. 당신은 '검증'을 찾고 있습니다. –

+0

@Stoic : 코드 추가 : –

답변

0

@MbRostami는 'get_required_files()'함수를 사용하여 포함 된 파일을 확인하는 주석에서 조언을 제공했습니다. 잘못된 파일이로드 된 것으로 나타났습니다. init.php 파일에서

Root 
| dashboard.php 
| users.php 
|- code 
| Users.php 
| init.php 

은 Users.php 파일 (두 파일은 코드 폴더에있는)가 필요했다. 그러나 어떤 이유로 root에서 users.php 파일이로드되었습니다. 어떤 이상한 행동. Ahwell, 그게 크리스마스 때 조사 할거야.

문제가 해결되었습니다. 감사!

관련 문제