8797 sujets

Développement web côté serveur, CMS

EDIT : j'ai trouvé la solution tout seul en modifiant tout le code : je n'ai plus d'include dans la page, donc le problème ne se pose plus. Merci à toutes les personnes qui ont pris la peine de lire ce texte.

Bonjour tout le monde,

J'ai besoin de définir une variable en fonction d'un autre fichier. J'utilise donc la fonction suivante :
a écrit :
$insert=include 'insert.php'

Et tout marche parfaitement.

Le problème est que je veux que insert.php reprenne une variable incluse dans la première page. Naturellement, j'ai modifié le code en :
a écrit :
$insert=include 'insert.php?page=mavariable'

et je reprends la variable dans insert.php avec un $_GET[].

Et là, ça marche plus : si j'ouvre insert.php?page=mavariable dans mon navigateur, la page fonctionne sans problème, mais dès que j'ouvre la page utilisant l'include, j'ai ce message d'erreur :
a écrit :
Warning: main(insert.php?page=mavariable): failed to open stream: No such file or directory in /home/admin/essai.php on line 3

Warning: main(): Failed opening 'insert.php?page=mavariable' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/admin/essai.php on line 3

Le problème provient donc du "?page=mavariable" et je ne sais pas pourquoi. D'où ma question : pourquoi [monde cruel]?

Merci d'avance pour vos réponses.
Modifié par korben (22 Nov 2005 - 04:50)
Bonjour,

La méthode
$insert=include 'insert.php?page=mavariable'
est inutile.

"$mavariable" est définie dans le début de ton script, avant l'inclusion que tu souhaites faire.

L'inclusion ne nécessite (heureusement !!! ) pas de transmettre de cette façon toutes les variables au script à inclure.

"Include" n'effectue aucune transmission ou récupération de variables, à ma connaissance, mais permet juste de reconstituer, en fonction de certaines conditions, un script adapté à ces conditions.

Ce script traite les variables présentes, tout simplement.