xone Posté(e) le 14 janvier 2005 Partager Posté(e) le 14 janvier 2005 bonjour aidez moi svp, je debute et j'ai un gros pb comment modifer ça pour que sa marche $page = $_GET['page']; if( file_exists('include/'$page.'.php') ) include ('include/'$page.'.php'; else include('include/acceuil.php'); Lien vers le commentaire Partager sur d’autres sites More sharing options...
Ago Posté(e) le 14 janvier 2005 Partager Posté(e) le 14 janvier 2005 faut pas oublier les {} pour les if...then...else $page = $_GET['page']; if(file_exists('include/'$page.'.php')){ include ('include/'$page.'.php'; }else{ include('include/acceuil.php'); } ca devrait rouler mais si tu as le temps, va jeter un coup d'oeil à ce topic, http://www.pcinpact.com/forum/sujet_37221.htm , il donne pas mal de trucs pour etre sur que ton code est secure Lien vers le commentaire Partager sur d’autres sites More sharing options...
xone Posté(e) le 14 janvier 2005 Auteur Partager Posté(e) le 14 janvier 2005 sa marche toujours pas j'ai une erreur à Parse error: parse error, unexpected T_VARIABLE in c:\program files\easyphp1-7\www\max\index.php on line 35 c a d $page = $_GET['page']; je comprend plus rien pour le securiser, je suis pas encore la je cherche à le faire ùarcher correctement merci Lien vers le commentaire Partager sur d’autres sites More sharing options...
Ago Posté(e) le 14 janvier 2005 Partager Posté(e) le 14 janvier 2005 ca doit etre facile mais je trouve pas je suis en train de tester ca en local Lien vers le commentaire Partager sur d’autres sites More sharing options...
Ago Posté(e) le 14 janvier 2005 Partager Posté(e) le 14 janvier 2005 et voila ca devrait aller chez toi <? $test = $HTTP_GET_VARS['page']; if(file_exists('include/'.$test.'.php')) { include 'include/'.$test.'.php'; }else{ include 'include/acceuil.php'; } ?> Lien vers le commentaire Partager sur d’autres sites More sharing options...
xone Posté(e) le 14 janvier 2005 Auteur Partager Posté(e) le 14 janvier 2005 sincerement je dis bravo et dire que je chercher depuis deux jours (salleté de points) Lien vers le commentaire Partager sur d’autres sites More sharing options...
xone Posté(e) le 14 janvier 2005 Auteur Partager Posté(e) le 14 janvier 2005 si tu veux voir pour quoi c'est faire et bien sur ton avis et conseil seront les tres bien venu http://82@64@5@113/max/ biensur il faut remplacer les . par des @ Lien vers le commentaire Partager sur d’autres sites More sharing options...
Ago Posté(e) le 14 janvier 2005 Partager Posté(e) le 14 janvier 2005 je l'avais pas vu tout de suite, mais apres ca flashe ... et puis je me suis embrouillé parce que tu as appelé ton repertoire include/ mis à part ca mais attention sur la page d'accueil Notice: Undefined index: page in c:\program files\easyphp1-7\www\max\index.php on line 34 Lien vers le commentaire Partager sur d’autres sites More sharing options...
xone Posté(e) le 14 janvier 2005 Auteur Partager Posté(e) le 14 janvier 2005 la ligne 34 c'est $test = $HTTP_GET_VARS['page']; comment faire en faite c'est normal quand on ouvre la permier page ya pas de variable, alors comment faire pour lui dire d'ouvrir accueil des le debut sans chercher une variable ou ouvrir la page avec accueil comme variable ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
Ago Posté(e) le 14 janvier 2005 Partager Posté(e) le 14 janvier 2005 avec un empty() <? if(!empty($HTTP_GET_VARS['page']) and file_exists('include/'.$HTTP_GET_VARS['page'].'.php')) { $test = $HTTP_GET_VARS['page']; include 'include/'.$test.'.php'; }else{ include 'include/acceuil.php'; } ?> je l'ai fait à l'arache donc je suis pas sur du résultat Lien vers le commentaire Partager sur d’autres sites More sharing options...
xone Posté(e) le 14 janvier 2005 Auteur Partager Posté(e) le 14 janvier 2005 je teste ça de suite sinon ta pas une idee du pourquoi sa marche pas echo "<li class=\"lib\"><a href=\"$forum\">Forum</a><br>"; Lien vers le commentaire Partager sur d’autres sites More sharing options...
xone Posté(e) le 14 janvier 2005 Auteur Partager Posté(e) le 14 janvier 2005 sa serait pas plutot sa $test = $HTTP_GET_VARS['page']; if(!empty($HTTP_GET_VARS['page']); { include 'include/accueil.php'; }else {(file_exists('include/'.$test.'.php')) {include 'include/'.$test.'.php'; } par contre ya un pb à la ligne à la premiere ligne je pense que c'est un pb de {} que je sais pas encore bien mettre Lien vers le commentaire Partager sur d’autres sites More sharing options...
njoyard Posté(e) le 14 janvier 2005 Partager Posté(e) le 14 janvier 2005 non! le empty permet de verifier l'existence du parametre page. une fois que tu sais si il existe, tout roule... if (empty($HTTP_GET_VARS['page'])) { include 'include/accueil.php'; } else { $test = $HTTP_GET_VARS['page']; if (file_exists('include/' . $test . '.php')) { include 'include/' . $test . '.php'; } else { include 'include/accueil.php'; } } (probablement factorisables ces if) edit: factorisation: if (!empty($HTTP_GET_VARS['page']) && file_exists('include/' . ($test = $HTTP_GET_VARS['page']) . '.php')) { include 'include/'.$test.'.php'; } else { include 'include/accueil.php'; } Lien vers le commentaire Partager sur d’autres sites More sharing options...
xone Posté(e) le 15 janvier 2005 Auteur Partager Posté(e) le 15 janvier 2005 Je dis bravo kox sa a marché du premier coup allez l'histoire d'aller un peu plus loin je cherche comment éviter ça "http://jp/Max/?page=files/partenariats/tr" il existerait pas une fonction qui chercherait tous le fichier s'appelant "tr" dans le site ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
njoyard Posté(e) le 15 janvier 2005 Partager Posté(e) le 15 janvier 2005 non mais je pense que tu peux le faire facilement a l'aide de la fonction opendir() Lien vers le commentaire Partager sur d’autres sites More sharing options...
RaphAstronome Posté(e) le 15 janvier 2005 Partager Posté(e) le 15 janvier 2005 allez l'histoire d'aller un peu plus loin je cherche comment éviter ça "http://jp/Max/?page=files/partenariats/tr" remplace $test = $HTTP_GET_VARS['page']; par $test = str_replace("/" , "" , $HTTP_GET_VARS['page']);$test = str_replace("\\" , "" , $HTTP_GET_VARS['page']); Lien vers le commentaire Partager sur d’autres sites More sharing options...
ingeni Posté(e) le 16 janvier 2005 Partager Posté(e) le 16 janvier 2005 Faites gaffe avec HTTP_GET_VARS... Pour des raisons de sécurité, il vaut mieux utiliser $_GET. Pour les autres variables, regardez ce tableau... Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.