MJ92
Messages postés185Date d'inscriptionlundi 23 janvier 2006StatutMembreDernière intervention14 décembre 2014
-
14 avril 2008 à 17:59
MJ92
Messages postés185Date d'inscriptionlundi 23 janvier 2006StatutMembreDernière intervention14 décembre 2014
-
14 avril 2008 à 19:12
Bonjour,
Je vous fais part d'un soucis que j'ai et j'aimerai trouver une solution à ce problème. Voilà, j'ai voulu faire 2 include dans une page avec un OR car la page que je veux afficher ne fonctionne pas sur celle que je veux si elle est dans un sous-dossier :
<?php include('../mapage.php') OR include('../../mapage.php'); ?>
Evidemment, ca ne fonctionne pas, j'ai donc essayé une autre solution qui marche à partiellement :
<?php include('../mapage.php') | include('../../mapage.php'); ?>
Ca m'affiche ce que je demande, mais ca m'affiche aussi une erreur car include('../mapage.php') ne fonctionne pas ici (d'ou l'erreur) mais include('../../mapage.php') celle ci fonctionne bien.
En fait, est-il possible de faire un code avec des conditions du genre "Si include('../mapage.php') = erreur alors on affiche include('../../mapage.php')" ? Ou quelque chose de mieux ?
neigedhiver
Messages postés2480Date d'inscriptionjeudi 30 novembre 2006StatutMembreDernière intervention14 janvier 201119 14 avril 2008 à 19:09
Salut,
chdir ne fera pas grand chose à l'histoire.
Pour info, l'opérateur pipe | est un opérateur booléen.
101 | 100 = 101
Sinon, au lieu d'utiliser cette syntaxe dégueulasse qui consiste à mettre un or après une fonction, tu peux commencer par regarder si le fichier existe :
if (is_file ('../mapage.php')) {
require('../mapage.php');
}
elseif(is_file('../../mapage.php')) {
require('../../mapage.php');
}
else {
echo 'fichier non trouvé'
}
Mais si tu ne sais pas à quel niveau de ton arborescence tu te trouves, c'est que ton script est mal foutu : tu dois pouvoir faire en sorte de t'y retrouver où que tu sois, sans avoir besoin de faire des tests farfelus comme ça à chaque fois.
<hr size="2" width="100%" />Neige
N'hésitez pas à lire la doc de PHP avant de poser des questions triviales...