Problème Chargement de contenu html et php dans une page php ?

Signaler
Messages postés
27
Date d'inscription
dimanche 22 août 2004
Statut
Membre
Dernière intervention
3 septembre 2011
-
Messages postés
27
Date d'inscription
dimanche 22 août 2004
Statut
Membre
Dernière intervention
3 septembre 2011
-
Bonjour,

J'ai utiliser le code si dessous pour afficher mon contenu que j'ai creer en .html dans un dossier different mais quand j'ai un renvoi vers une page php par expl pour un formulaire. j'ai une erreur.

Comment afficher autant des pages php que html ?

Jai essayer mais rien, si quelqu'un à la reponse, merci d'avance !

if(
file_exists
("pages/$p.html") OR ("pages/$p.php") ){
include "pages/$p.html" OR "pages/$p.php";




PHP:
,

----

<?php
    $p
=
strtolower
(
$p
=
$_GET
[
'p'
]); 
    
$p
=
$_GET
[
'p'
];             
    if (isset(
$p
) && 
preg_match
(
"/^[a-z0-9]+$/i"
,
$p
)){ 
        if(
file_exists
(
"pages/$p.html"
)){ 
        include 
"pages/$p.html"

    }
    else{    
        include 
"pages/404.html"
;
        }
    }
    else{ 
//sinon inclure page erreur 404
        
include 
"pages/404.html"
;
    }
   
?>

Mon .haccess:

# On suit les liens symboliques
Options +FollowSymlinks
# Activation du mod rewrite d'Apache RewriteEngine On
RewriteEngine On
RewriteRule ^(.*)\.html$ index.php?pages=$1 [L]





Merci, Flaydeer

2 réponses

Messages postés
3708
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
27 avril 2012
30
Salut,

Je n'ai parcouru que très brièvement, mais suffisamment pour voir un paquet d'erreurs.
Déjà ton htaccess fait un truc du genre :
http://machin.fr/page.html => http://machin.fr/index.php?pages=page
Hors dans ton script tu récupères $_GET['p'] alors qu'il faudrait récupèrer 'pages'.

if( [../c.aspx?u=aHR0cDovL3BocC5uZXQvbWFudWFsL2Z1bmN0aW9uLmZpbGUtZXhpc3RzLnBocA== file_exists ]?? la première affectation de $p ne sert là aussi à rien puisqu'elle est redéfinie ensuite. Et si $_GET['p'] n'est pas défini ?

Bref, un truc dans le genre plutôt :

if (isset($_GET['pages'])) {
   if (file_exists($_GET['pages'].php)) {
       include ($_GET['pages'].'.php');
   } elseif (file_exists($_GET['pages'].html)) {
       include ($_GET['pages'].'.html');
   } else include ('pages/404.html');

} else include ('pages/404.html');

C'est loin d'être le top mais ça devrait marcher.
Je pense qu'il est nécessaire que tu revois ton système d'include, ces pages sont hébergées sur ton serveur, tu dois donc connaitre leurs noms, non ?

Cordialement,

Kohntark -
Messages postés
27
Date d'inscription
dimanche 22 août 2004
Statut
Membre
Dernière intervention
3 septembre 2011

Salut,

J'ai suivi en parti le tutoriel du site http://grafikart.fr/tutoriels/video/31/decomposer-un-site-en-php our plus d'infos.

Ce que je voudrai faire est simple, lol. Un site avec une interface dynamique, c'est à dire pae expl. pour les menus, j'ai fais des include. Mais pour mon contenu j'ai suivi le tuto en question !

Je ne sais pas trop que faire car sur le web ce que j'ai trouver (ou peux etre pas chercher avec le bon nom ?) parlent de pseudos frames ou include et pour ce qui est de la sécurité, il faut suivre et chaqu'un une solution plus ou moins différente et vague ! Sutout pour un débutant.

Merci à vous tous.

Alors je suis entièrement à votre écoute pour toutes solutions !







Flaydeer