Liens avec variable (liens.php?variable=1)

Résolu
Bowlest Messages postés 42 Date d'inscription mercredi 14 mai 2003 Statut Membre Dernière intervention 7 novembre 2005 - 10 août 2005 à 18:18
DJ_BoOmEr Messages postés 22 Date d'inscription vendredi 3 mars 2006 Statut Membre Dernière intervention 30 août 2007 - 4 oct. 2008 à 16:02
Bonjour,

Je suis actuellement en train de monter un serveur local pour un site intranet. Sur certaines pages, je fais appel a la fonction "include" pour afficher des pages dans une page template.
<?
include "$page.php";
?>

Mon probléme viens lorsque je fais un liens en incluant une variable:

[liens.php?page=1

Sur mon site local, avec Apache, MySQL, etc.. (WAMP) ca ne marche pas, j'obtiens l'erreur suivante:
Warning: main(.php) [
]function.main]: failed to open stream: No such file or directory in c:\wamp\www\FMC\manuel\directives\directives-read.php on line 34

Warning: main() [
function.include]: Failed opening '.php' for inclusion (include_path='.;C:\php5\pear') in c:\wamp\www\FMC\manuel\directives\directives-read.php on line 34

Or, si je met ces fichiers sur mon site hebergé par mediatemple, le liens marche parfaitement

Il y a t il une modification particuliere a faire sur PHPini, ou ais-je fais une erreur qqpart?

Merci d'avance

P.S: WAMP installe sur deux ordinateurs differents, avec la meme erreur, pareil avec easyphp

Federal Design House

9 réponses

mcjoedassin Messages postés 196 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 2 septembre 2005
10 août 2005 à 18:59
^ register_globals = on dans le php.ini
http://fr.php.net/register_globals
3
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
10 août 2005 à 22:28
Salut,



garde les register globals à off, mets l'error reporting à E_ALL et
évite d'utiliser cette méthode pour inclure des fichiers sans l'avoir
un minimum sécurisée auparavant, même si il s'agit d'un intranet...



Failles PHP

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li>
3
mcjoedassin Messages postés 196 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 2 septembre 2005
10 août 2005 à 18:52
essaye include $_GET['page'].".php";
attention à bien controler le contenu de cette variable
0
Bowlest Messages postés 42 Date d'inscription mercredi 14 mai 2003 Statut Membre Dernière intervention 7 novembre 2005
10 août 2005 à 19:27
Effectivement, j'avais oublié de mettre Register_globals= On

Merci pour cette réponse rapide :)

Federal Design House
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_GRenard Messages postés 1662 Date d'inscription lundi 16 septembre 2002 Statut Membre Dernière intervention 30 juillet 2008 1
10 août 2005 à 21:08
Non :) C'est mieux à off

http://www.phpcs.com/code.aspx?ID=24870

, EssayezTestez avant de Poser une question !
http://www.lookstrike.com
0
Bowlest Messages postés 42 Date d'inscription mercredi 14 mai 2003 Statut Membre Dernière intervention 7 novembre 2005
10 août 2005 à 22:33
Ok, je ferais ça pour la version "production" du site

Merci :)

Federal Design House
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
10 août 2005 à 22:37
"Federal Design House" => Met un "Corporation" à ta signature ça fait stayle (bon ok je sors lol)

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li>
0
Bowlest Messages postés 42 Date d'inscription mercredi 14 mai 2003 Statut Membre Dernière intervention 7 novembre 2005
10 août 2005 à 22:42
^^ j'y reflechissais hier, aprés que Mozzila devienne corporate :p

Federal Design House
0
DJ_BoOmEr Messages postés 22 Date d'inscription vendredi 3 mars 2006 Statut Membre Dernière intervention 30 août 2007
4 oct. 2008 à 16:02
Bonjour, c'est normal, tu as fais des erreurs toutes betes, tu as mis un ".php" dans ta variable, tu as pas mis les parenthèse de ton include. il faut que tu fasse ca :

<?
$page="page.php"
include ("$page");
?>
a la place de




<?
include "$page.php";
?>






Et si tu veux que ca marche quand on clique sur un liens c'est :

Dans ton menu :

[index.php?page=mapage

]

[index.php?page=mapage2

]

Dans ton fichier "index.php" :

<?

$page=$_GET[page];
include ("$page");
?>

Voila !

sur ce, bon courage ;)
0
Rejoignez-nous