Pb Include() et mes fonctions (O_O)

Résolu
Overcro Messages postés 17 Date d'inscription lundi 21 avril 2003 Statut Membre Dernière intervention 20 octobre 2006 - 22 juin 2006 à 14:27
Overcro Messages postés 17 Date d'inscription lundi 21 avril 2003 Statut Membre Dernière intervention 20 octobre 2006 - 23 juin 2006 à 12:22
Bonjour, j'ai un problème bizard avec les includes, en local mes tests fonctionnent bien
mais dès que j'upload sur mon hébergeur, ça marche aussi, mais seulement sur trois pattes (^_^)
J'aimerai centraliser certaines de mes fonctions que j'utilise sur plusieurs de mes sites sur un seul hébergeur.
Par exemple, sur mon hébergeur commun je met ce script test.php :

<?php
  echo "Hello World";
?>

et que sur mon site principal je met dans le script :

<?php
   require("http://sitecommun.com/scripts/test.php");
?>

ça va marcher nikel, mais dès que je veut mettre une fonction dans mon script commun
ça me dit qu'il ne connais pas la fonction mais il m'affiche quand meme mon Hello World.

ça vient de mon hébergeur ça ?

Merci et bonne continuation

100% mangawww.petitdiable.new.fr  

2 réponses

malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
22 juin 2006 à 14:57
Hello,

à mon avis, c'esrt un problème lié au fonctionnement des structure require, include, require_once, include_once :
si on fait un require via une url complète, on va inclure le HTML généré par le serveur hébergeant le fichier inclus. Ce qui veut dire que si ce fichier fait des echo, par exemple, tu vas bien avoir le résultat du echo (mais pas le echo en lui-même... le echo en lui-même va être traité par le serveur hébergeur, et il va renvoyer le html que cela a généré). Mais si tu déclares des variables, fonctions, classes...et bien tu ne les auras pas.
Extrait de la doc :
http://fr3.php.net/manual/fr/function.include.php

" Si les Gestionnaires d'URL sont activés dans PHP (ce qui est le cas par défaut), vous pouvez localiser le fichier avec une URL (via HTTP ou bien avec un gestionnaire adapté : voir Annexe M pour une liste des protocoles), au lieu d'un simple chemin local. Si le serveur distant interprète le fichier comme du code PHP, des variables peuvent être transmises au serveur distant via l'URL et la méthode GET. Ce n'est pas, à strictement parler, la même chose que d'hériter du contexte de variable. Le fichier inclus est en fait un script exécuté à distance, et son résultat est inclus dans le code courant."
3
Overcro Messages postés 17 Date d'inscription lundi 21 avril 2003 Statut Membre Dernière intervention 20 octobre 2006
23 juin 2006 à 12:22
Donc si j'ai bien compris, il est impossible d'utiliser les includes comme je le voulais.
Mais en revanche, je dois pouvoir centraliser les statistiques de plusieurs sites sur
une unique base de données ou encore centraliser uniquement tout ce qui est html .

Merci beaucoup (^_^)

100% mangawww.petitdiable.new.fr  
3
Rejoignez-nous