Précédent   Forum des professionnels en informatique > PHP > Langage > Fonctions
Fonctions Forum d'entraide sur les fonctions PHP. Avant de poster -> FAQ fonctions et Sources diverses
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 01/11/2011, 12h28   #1
Membre du Club
 
Avatar de PtitGénie
 
Étudiant
Inscription : décembre 2007
Messages : 231
Détails du profil
Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : décembre 2007
Messages : 231
Points : 49
Points : 49
Par défaut Define puis include

Bonjour à tous !

Voici mon petit bout de code :

Code :
1
2
3
4
5
6
7
8
9
define("_JEXEC", true);
 
if( !defined('_JEXEC') ){
	echo "pas définie<br>";
}else{
	echo "définie<br>";
}
 
include('http://serveur1./dossier/test.php');
test.php :

Code :
1
2
3
4
5
if( !defined('_JEXEC') ){
	echo "pas définie<br>";
}else{
	echo "définie<br>";
}
La variable n'est pas correctement reconnue dans le fichier inclus 'test.php' (affichage de "pas définie" la 2ème fois). Est-ce normal ? Comment utiliser dans ce fichier inclus une constante déclarée ainsi à l'extérieur ?

Merci d'avance ^^
PtitGénie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/11/2011, 13h12   #2
Membre actif
 
Avatar de bigltnt
 
Inscription : mars 2007
Messages : 221
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : mars 2007
Messages : 221
Points : 155
Points : 155
Le problème est que tu appelles le deuxième fichier en web Il ne faut pas faire
Code :
include('http://serveur1./dossier/test.php');
Avec ca c'est une nouvelle instance de ton serveur web qui te délivre ta page, comme si tu l'avais interrogée avec ton navigateur. Avec cet exemple du navigateur, tu vois bien que si tu essayes d'afficher directement ta page "test.php", la constante n'est évidement pas définie.


Donc pour toi il faut utiliser un chemin relatif vers ton fichier (surtout pas de 'http', pour que ca ne soit pas le serveur web qui te délivre la page, mais bien le moteur PHP de l'instance en cours) :
Code :
1
2
//Par exemple
include('./dossier/test.php');
bigltnt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/11/2011, 12h27   #3
Membre du Club
 
Avatar de PtitGénie
 
Étudiant
Inscription : décembre 2007
Messages : 231
Détails du profil
Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : décembre 2007
Messages : 231
Points : 49
Points : 49
Nan j'étais obligé parce que le fichier n'est justement pas sur le même serveur que mon site...
Mais j'ai lu que c'était impossible, que lorsque c'était un appel distant le code PHP n'était pas interprété (normal, pour éviter des failles).
Tant pis :p Merci à toi !
PtitGénie est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 12h32.


 
 
 
 
Partenaires

Hébergement Web