guisx00
Messages postés104Date d'inscriptiondimanche 23 juillet 2006StatutMembreDernière intervention15 août 2009
-
15 août 2009 à 17:47
Tonio_35
Messages postés567Date d'inscriptionmercredi 4 octobre 2006StatutMembreDernière intervention30 août 2011
-
21 août 2009 à 16:21
Bon jour à tous,
Voila j'ai un petit soucis qui est vraiment bizard avec mon site je m'explique
J'ai un site avec un milieu qui change selon les pages que j'appel et url rewrite passe derrière
Dans mon index.php à la racine du site j'ai se texte dans la partie qui sera active
$p=strtolower($_GET['p']);//replace en minuscules
if(isset($p) && preg_match("/^[a-z0-9]+$/i",$p)){ //pour eviter les failles durl
if(file_exists("pages/$p.html")) {//on verif si le fichier existe
include "pages/$p.html";
} else {
include "pages/405.html";
}
} else {
include "pages/404.html";
}
l'inculde page 405 c'est juste pour savoir ou il bloque
Biensur j'ai mon .htaccess qui se trouve lui aussi à la racine et contient ceci
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^(.*)\.html$ index.php?p=$1 [L]
Dans mon dossier pages j'ai donc pleins de trucs pour les test
Genre index.html / news.html / 404 et 405.html etc
Quand je fait index.html et news.html no soucis tout marche j'ai le texte de ses pages dans ma partie active
Maintenant quand je refait la même chose sauf que à la place de html partout je met .php sauf la page index.html bien sur ba sa marche plus il me sort à chaque coup l'erreur 405
Si quelqu'un voit pourquoi sa me fait sa je suis preneur ou peu m'envoye vers des pistes je suis à l'ecoute :)
Tu veux que dans la barre d'adresse les .php soient remplacé par des .html...
C'est ca ?
Si c'est le cas, l'url rewrite ne sert pas à php, dans le code tu dois utiliser les vrais nom de fichiers :
<?php
if(file_exists("pages/$p.php")) {//on verif si le fichier existe
include "pages/$p.php";
} else {
include "pages/405.php";
}
} else {
include "pages/404.php";
}
?>