Bonjour,

J’ai un fichier d'autoload, et certaines fois il n'arrive pas à récupérer les valeurs de mes constantes définies préalablement.




Voici l'erreur que j'ai :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
Warning: scandir(PATH_CLASSES) [function.scandir]: failed to open dir: No such file or directory in /V1/admin/conf/config.ini.php on line 42
 
Warning: scandir() [function.scandir]: (errno 22): Invalid argument in V1/admin/conf/config.ini.php on line 42
 
Warning: Invalid argument supplied for foreach() in /V1/admin/conf/config.ini.php on line 43
 
ERROR during Loading class::user.php

et voici mon code :


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
 
 
<?php
session_start();
//define environement
require_once('env.php');
 
 
 
 
//PATH TO IMPORTANTS FILES
define("PATH_CLASSES", dirname(__FILE__)."/../kernel/classes/");
 
define("PATH_WEB_JS", dirname(__FILE__)."/../kernel/web/js/");
define("PATH_WEB_CSS", dirname(__FILE__)."/../kernel/web/css/");
 
define("PATH_WEB_ADMIN_JS", dirname(__FILE__)."/../apps/admin/web/js/");
define("PATH_WEB_FRONT_JS", dirname(__FILE__)."/../apps/site/web/js/");
 
define("PATH_WEB_ADMIN_CSS", dirname(__FILE__)."/../apps/admin/web/css/");
define("PATH_WEB_FRONT_CSS", dirname(__FILE__)."/../apps/site/web/css/");
 
define("PATH_WEB_ADMIN_IMG", dirname(__FILE__)."/../apps/admin/web/images/");
define("PATH_WEB_FRONT_IMG", dirname(__FILE__)."/../apps/site/web/images/");
 
define("PATH_LIB", dirname(__FILE__)."/../apps/lib/");
 
 
 
 ?>
<?php 
function __autoload($classe){
 
	$classe_load = false;
	$classe = ucfirst(strtolower($classe)).".php";
 
	$dirs = scandir(PATH_CLASSES);
	foreach ($dirs as $dir){
 
		if($dir != "." && $dir != ".."){
			$dir_classes =& scandir(PATH_CLASSES.$dir);
			if(in_array($classe, $dir_classes)){
 
				require(PATH_CLASSES.$dir."/".$classe);
				$classe_load = true;				
				break;
 
			}
		}
	}
 
	if(!$classe_load){
		if(is_file(PATH_LIB."lib.".strtolower($classe))){
			require(PATH_LIB."lib.".strtolower($classe));
		}else{
			echo "<br>ERROR during Loading class::".strtolower($classe);
		}
	}
 
}
 
 
?>


Quand je dis certaines fois c'est parce que d'un navigateur à l'autre, d’un rafraichissement à l'autre, j'ai l’erreur.
Je ne sais plus où chercher.

Auriez-vous une idée s’il vous plaît?



Merci d'avance.