2012-03-24 3 views
1

J'ai utilisé le code suivant pour obtenir la racine du document.php include problème de fichier utilisant la racine du document

$path = get_file_dir(); 
function get_file_dir() { 
    global $argv; 
    return realpath($argv[0]); 
} 

Ci-dessous le code comprend config.php et config.php a la variable setuprun de $ avec une valeur.

if((file_exists("$path/admin/config.php"))) { 
include_once "$path/admin/config.php"; 
} 
if($setuprun=="true") { 
    //do some code 
} 

Dans mon système, il prend la racine du document comme/home/myname/myfolder et la variable setuprun de $ a la valeur et le code fonctionne parfaitement.

Mais dans le système d'un autre utilisateur, il affiche l'erreur suivante.

Avis: Undefined variable: setuprun en /usr/local/www/chat/setup.php ligne 22.

Il utilise FreeBSD 8.2 Stable avec MySQL 5, PHP5 et Apache 2.2.

Quelqu'un peut-il s'il vous plaît aidez-moi à résoudre cette erreur?

Répondre

0

Try this ..

define ('setuprun', true); // pour effacer l'erreur

ET ce lieu setuprun == true ..

if (defined ('setuprun'))

+0

Essayez echo $ path; et utilisez debbuger pour voir ce que vous avez à faire avec un système où vous avez des problèmes. Encore mieux supprimer "if ((file_exists (" $ path/admin/config.php ")))" et attendez que debbuger vous dise où est le problème. – Xfile

0

Undefined variable signifie que vous n'avez pas défini votre setuprun ... Si vous définissez cette variable dans un autre document, vous devez vérifier si elle est incluse ou non avant d'utiliser les variables qui y sont définies.

et essayez d'utiliser dirname(__FILE__) plutôt que $ argv [0]

+0

$ path a la valeur/usr/local/www/chat. Est-ce que /usr/local/www/chat/admin/config.php peut inclure config.php ou non? – nithi

+0

si votre répertoire racine est 'user' - Oui! – Harry

+0

$ argv variable ne fonctionne que lorsque vous exécutez votre script à partir de la ligne de commande – Harry

Questions connexes