J'ai trouvé ceci sur un tutorial de Jullian qui pourrait sécuriser mon script :(je remplacerai $page par ma propre variable)
$page=preg_replace("/[^a-z0-9_ ]/i", "", $page);
if(!@include("includes/$page.php"))die("Cette page n'existe pas sur le serveur, merci d'informer le webmaster du site si ce problème venait à se reproduire.");
mais le pb est que si je supprime les "/" l'url ne marche plus
l'url valide est par exemple la suivante
Kdecherf
Messages postés96Date d'inscriptionmardi 9 janvier 2007StatutMembreDernière intervention18 avril 2007 10 févr. 2007 à 15:49
Remplaces
<?php
if (isset ($_GET['theme'])){
$homme = ($_GET['theme']);
include $homme."lire.php";
}
?>
Par
<?php
if (isset($_GET['theme']) && file_exists($_GET['theme'].'lire.php'))
{
require $_GET['theme'].'lire.php';
}
Sans garantie et ceci ne sert juste à tester si le fichier existe. Maintenant pour supprimer les passages d'url, alors là essayes avec des preg_match().
Cordialement,
Kdecherf
philclimb
Messages postés20Date d'inscriptionsamedi 10 février 2007StatutMembreDernière intervention16 avril 2013 10 févr. 2007 à 18:54
je crois que là c'est bon effectivement.
je vais tester ça .
j'avais pensé à quelque chose comme cela mais je n'étais pas arrivé à le formuler. En plus avec require à la place d'include ça semble plus sur !
philclimb
Messages postés20Date d'inscriptionsamedi 10 février 2007StatutMembreDernière intervention16 avril 2013 11 févr. 2007 à 16:05
super , merci,
à charge de revanche ....
bon maintenant que j'ai apparamment comblé la faille de ces pages il me reste à sécuriser un formulaire mail grace auquel j'ai été l'heureux destinataire de 300 mails en une journée...
Ah ces spammeurs et hackers, on s'ennuirait sans eux!