Pkoi ça marche pas ?

Résolu
ranouf Messages postés 237 Date d'inscription mercredi 18 décembre 2002 Statut Membre Dernière intervention 31 août 2009 - 14 oct. 2004 à 15:08
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 - 14 oct. 2004 à 20:30
pkoi ça marche pas ça ?
<?
if ($page="" or $page=null)
{
include("news.php");
}
else
{
$page=$page.".php";
include($page);
}
?>
g un lien ([index.php?page=News Accueil]) quand je click dessus normalement je devrais avoir news.php qui s'ouvre et bien non ya une erreur
Warning: main(.php): failed to open stream: No such file or directory in c:\easyphp1-7\www\soulac\index.php on line 58

Warning: main(): Failed opening '.php' for inclusion (include_path='.;C:\EasyPHP1-7\php\pear\') in c:\easyphp1-7\www\soulac\index.php on line 58
au niveau de include($page);
vous avez une idée ?

6 réponses

juki_webmaster Messages postés 947 Date d'inscription mercredi 19 novembre 2003 Statut Membre Dernière intervention 5 avril 2008 3
14 oct. 2004 à 16:56
Salut,
faire ceci : include($page); est une grave erreur ! ceci peut entrainer des failles de type CSS.
Mais bon, essaye plutot ceci :

<? 
if ($page=="" or $page=="null" or $page!="news") 
{ 
include("news.php");
} 
else 
{
$page="".$page.".php";
include($page);
} 
?>


Quelques informations consernant les failles de type CSS :
http://www.sheep-team.org/tutos/16
http://users.skynet.be/hawai/UnderGround/Failles/faille09.html
http://www.ixus.net/resume_messages.php?topic=3365
3
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
14 oct. 2004 à 20:16
Plus maintenant car il y a le file_exists, mais avant tu pouvais, suffisait de mettre une url de page distante avec un serveur n'analysant pas le php et hop, fini pour ton site :-(

Tu peux cliquer sur "réponse acceptée" en dessous de mon pseudo stp ?

merci beaucoup

bye

http://www.vulgarisation-informatique.com : entraide, dépannage et vulgarisation informatique
3
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
14 oct. 2004 à 19:18
Salut :-) (politesse bon sang...)

Tout d'abord pour les failles c'est pas bon, ensuite pour sécuriser le tout :

<?php
if (!isset($_GET['page'] OR empty($_GET['page']) OR !file_exists($page.'.php')
{
include 'news.php';
}
else
{
include($page.'.php');
}
?>

a ++

http://www.vulgarisation-informatique.com : entraide, dépannage et vulgarisation informatique
0
ranouf Messages postés 237 Date d'inscription mercredi 18 décembre 2002 Statut Membre Dernière intervention 31 août 2009
14 oct. 2004 à 20:12
ton idée Anthomicro de tester si la page existe est pas conne du tout !!! je la conserve

par contre g pas trop compris cette histoire de faille ? c a d qu'en faisant comme g fait je peux me faire hacké ?
0

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

Posez votre question
ranouf Messages postés 237 Date d'inscription mercredi 18 décembre 2002 Statut Membre Dernière intervention 31 août 2009
14 oct. 2004 à 20:22
merci pour l'info je ferai gaffe à l'avenir si t'as d'autres astuces comme ça pour éviter les failles je suis preneur
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
14 oct. 2004 à 20:30
Tu peux faire un switch si tu as un nombre de pages peu important :

if(isset($_GET['page']))
{
switch($_GET['page']))
{
case 'news.php':
include 'news.php';
break;
case 'page2.php':
include 'page2.php';
break;
case else:
include 'news.php';
break;
}
}

a +
http://www.vulgarisation-informatique.com : entraide, dépannage et vulgarisation informatique
0
Rejoignez-nous