bonjour à tous,
voila j'ai besoin de passer un parametre à une page appelée à l'aide d'un include. Comment puis-je faire ou par quoi remplacer le include pour que ca fonctionne?
Version imprimable
bonjour à tous,
voila j'ai besoin de passer un parametre à une page appelée à l'aide d'un include. Comment puis-je faire ou par quoi remplacer le include pour que ca fonctionne?
tu déclares&assigne la variable avant l'include ?
oui.
en fait j'ai une page en deux parties.
Je souhaite afficher dans la deuxieme partie le contenu que me renverra une autre page PHP en fonction d'un argument que je connais.
Bonjour,
si j'ai bien compris ce que tu veux faire, il n'y a pas besoin de faire quelque chose de spécial.. si t'as declaré et assigné une varibale, le fichier en include (le include vient aprés la decalration) peut le traiter sans probleme.
c'est bien ce que tu veux non?
apparement je suis pas très clair (ce qui ne m'étonne pas de moi). Je vais essayer de mieux expliquer.
j'ai une page php; index.php dont voici le contenu:
comme vous l'avez compris, cette page doit etre appelée par une autre qui doit lui transmettre en parametre la page à afficher dans panelCentre.Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 <html> <head></head> <body> <div id="page"> <?php include('../entete.htm'); ?> <div id="panelCentre"> <?php include($pageOK[$_GET['page']]); ?> </div> </div> </body> </html>
Jusque là OK.
On aura donc dans la page appelante quelquechose comme:
Le problème, et la ou le bas blesse c'est que toto.php a besoin de recevoir un parametre pour savoir le nombre de ligne à afficher. Le lien dans la page appelante doit transmettre ce nombre:Code:<a href="./index.php?page=toto.php">aller à toto</a>
Mais il ne fait que donner le nombre à index.php qui lui meme INCLU toto.php qui a besoin de ce parametre.Code:<a href="./index.php?page=toto.php&nombre=25">aller à toto</a>
Le include devrait donc pour bien faire passer ce nombre par exemple en faisant comme un lien:
mais il n'en veut pas.Code:include($pageOK[$_GET['page']].'?nombre=$nombre_pages');
Comment puis je faire autrement?
tu peux utiliser $_GET['nombre'] dans la page que tu inclus.
si tu veux t'amuser a recuperer dynamiquement les variables contenu dans le tableau c'est possible mais pas utile ds ce cas si.
je veux bien faire un $_GET['nombre'] dans la page que j'inclus mais comment lui passer ce nombre en parametre puisque ce n'est pas une URL mais un include et que quand je fais:
il me dit qu'il ne trouve pas la page 'toto.php?nombre=$nombre_pages'Code:include($pageOK[$_GET['page']].'?nombre=$nombre_pages');
Bonjour,
Ca marchera surement mieux comme ca :
include($pageOK[$_GET['page']].'?nombre='.$nombre_pages);
S.
ca ne fonctionne toujours pas, j'ai deux messages d'erreur pour cette ligne:
-Warning: main(Pages/toto.php?nombre=5): failed to open stream: No such file or directory
-Warning: main(): Failed opening 'Pages/toto.php?nombre=5' for inclusion (include_path='.;C:/Program Files/EasyPHP1-8\php\pear\')
Faut dire qu'un include sert a inclure un fichier, pas une adresse web.
S.
Le problème c'est qu'ici le fichier à inclure a besoin de connaitre la valeur d'une variable.
Sinon a part transmettre des valeurs de page en page, y a pas moyen de récupérer une valeur? comment procede t-on normalement dans ces cas la?
Soit plus precis dans ce que tu veux faire.
Ton include est en fait une fonction ? Une page web vers laquelle tu veux te rediriger ? Autre chose ????
Un include(fichier) est l'equivalent d'un copier-coller de ton fichier ton ton script, rien de plus. Le message est clair, le fichier machin?nombre=5 n'existe pas, et pour cause !!
Tu ne pourras pas detourner la commande include, mais il en existe surement une autre qui repond a tes besoins.
S.
oui, je cherche l'équivalent.
en fait comme tu dis le include est l'equivalent d'un copier-coller du fichier et c'est ce que je veux. Mais si ce fichier a besoin de connaitre le nombre de ligne qu'il doit afficher? inclu ou non il a besoin d'un parametre spécifiant ce nombre. Sauf que s'il est inclu ce n'est pas possible apparement.
donc je récapitule: je suis sur une page et j'ai un lien qui doit afficher la page index.php dont une partie est le fichier toto.php qui affiche une liste d'éléments dont le nombre doit etre passé en parametre.
Mais comme cette page est inclue je n'arrive pas à passer ce nombre en parametre. voila
Et bien transforme ton toto.php en une fonction qui accepte en argument ton nombre de lignes.
S.
J'ai répondu : tu déclares&assigne la variable avant l'include ?
Mais il fallait bien lire : tu déclares&assigne la variable avant l'include.
Comme l'écrit Sohnic, un include est un copier-coller de code. Après l'include, c'est comme si le fichier source et le fichier inclus ne faisaient qu'un. Le passage de variable est simplissime :
Si Index.php est de ce style :
la variable $nbre_lignes sera dispo dans l'inclusion de toto.php, car dans cet exemple toto.php est une partie (il est inclu) du code d'index.php, comme si on l'avait codé en dur dans ce fichier.Code:
1
2 $nbre_lignes=25; include('toto.php');
comment je peux faire ca? (Excuse moi mais je suis débutant en PHP)Citation:
Envoyé par sohnic
merci beaucoup vg33 je vais tester ca.
Salut
Dans le lien ci-dessous, tu ne passes pas un parametre aprés le (?page=), ...mais une url complete avec parametre.
Par conséquent, pour ton argument "page", celà restera de l'inconnu car il ne trouve pas l'association.
Exemples cohérents (1 parametre) :Code:<a href="./index.php?page=toto.php&nombre=25">aller à toto</a>
ou bien (3 parametres):Code:<a href=toto.php?nombre=25">aller à toto</a>
Pour ce dernier, sous réserve que ton argument "page" sache que toto est associé à toto.php. (avec switch par exemple)Code:<a href="./index.php?page=toto&nombre=25&bidule=14">aller à toto</a>
Citation:
Envoyé par ePoX
Code:
1
2
3
4
5 $Nombre = $nombre_pages; ou $_GET["nombre"] = $nombre_pages; // Mais je ne sais pas si cet exemple fonctionne sans avoir le paramètre nombre en url. include($pageOK[$_GET['page']);
jette un coup d'oeil dans la FAQ PHP, il y a un exemple de passage de paramètre :
http://php.developpez.com/faq/?page=...riptdansscript