Besoin d'aide site en php

Statut
N'est pas ouverte pour d'autres réponses.

DeScH

AstaLaVista
hello, j'ai besoin d'aide pour mon site php.

En fait, pour le moment une page de mon site a besoin de 5 fichiers
(banniere.php, menu.php, barremenu.php, bas.php,+ la page de contenu).

Exemple:
index.php contiendra

<?php include("banniere.php"); ?>
<?php include("barremenu.php"); ?>
<?php include("menu.php"); ?>
<?php include("page/index.php"); ?>
<?php include("bas.php"); ?>

Le probleme, c'est que pour chaque page, il faut créer la page qui regroupe les fichiers, plus le fichier de contenu a chaque fois.

Donc:
contact.php contiendra

<?php include("banniere.php"); ?>
<?php include("barremenu.php"); ?>
<?php include("menu.php"); ?>
<?php include("page/contact.php"); ?>
<?php include("bas.php"); ?>

J'aimerai qu'il n'y ait plus qu'une seule page de base, autrement dit, page_de_base.php amenera par clic sur les liens une autre page, mais qui sera toujours contenu dans page_de_base.php donc du style:
http://www.planetnfs.be/?page=contact
et qu'elle soit réaffichée en http://www.planetnfs.be/contact.htm

Je sais pas si vous comprenez qqch?

Est-ce le meilleur moyen pour créer un site? Car a chaque fois créer 2 fichiers pour une nouvelle page(mon systeme actuel), c'est super chiant.

Sauriez-vous me dire les meilleures méthodes et si ma théorie est bonne, me l'expliquer? (+sécurisé) Merci :)
 

ozilrit

Elite
J'aimerai qu'il n'y ait plus qu'une seule page de base, autrement dit, page_de_base.php amenera par clic sur les liens une autre page, mais qui sera toujours contenu dans page_de_base.php donc du style:
http://www.planetnfs.be/?page=contact
Code:
#PHP
switch (basename ($page))
{
case 'index': include ('page/index.php'); break;
case 'contact': include ('page/contact.php'); break;
default: include ('page/index.php');
}
Code:
#.htaccess
RewriteEngine on
RewriteBase /
RewriteRule ^/([a-zA-Z0-9]+)\.htm$ /?page=$1
 

SkYlEsS

Elite
Pour ce qui est de renommer un lien php en htm, tu as besoin d'actionner "l'url rewriting" :

http://www.webrankinfo.com/analyses/autres/url-rewriting.php

Pour ce qui est ... du reste :

Code:
<?php
    if ($_GET['page'] == "minichat")
    {
        include("minichat.php");
    }
    
    if ($_GET['page'] == "news")
    {
        include("news.php");
    }
    
    if ($_GET['page'] == "forum")
    {
        include("forum.php");
    }
    
    ?>
Mais ce n'est pas la méthode la plus sécurisée !

Je te conseille plutôt de faire :

Code:
<? include('header.php'); ?>

Ton code de la page

<? include ('footer.php'); ?>
Plus d'infos ? http://www.siteduzero.com/tuto-3-148-1-les-includes.html#ss_part_1
 
1er
OP
DeScH

DeScH

AstaLaVista
Merci à vous, mais n'y a-t-il pas moyen de sécuriser qd meme en faisant la 1ere méthode?
 

SkYlEsS

Elite
Notons également qu'au lieu de faire ceci :

Code:
<?php include("banniere.php"); ?>
<?php include("barremenu.php"); ?>
<?php include("menu.php"); ?>
<?php include("page/contact.php"); ?>
<?php include("bas.php"); ?>
Tu aurais pu faire cela :

Code:
<? include("banniere.php");
include("barremenu.php");
include("menu.php");
include("page/contact.php");
include("bas.php"); ?>
 
1er
OP
DeScH

DeScH

AstaLaVista
oui c vrai aussi lol
 

ozilrit

Elite
DeScH a dit:
Merci à vous, mais n'y a-t-il pas moyen de sécuriser qd meme en faisant la 1ere méthode?
?

Code:
#PHP
switch (basename ($_GET['page']))
{
case 'index': include ('page/index.php'); break;
case 'contact': include ('page/contact.php'); break;
default: include ('page/index.php');
}
Skyless, rassure moi, on voit ce que je tape ?
 

SkYlEsS

Elite
C'est une méthode dangereuse mais une méthode ! Ainsi, le problème de sécurité est résolu.

Pour ma part, j'aime opter pour un code "propre" :

Code:
<?

$page = $_GET['page'];

if ($page == "minichat")
{
     include("minichat.php");
}
    
if ($page == "news")
{
     include("news.php");
}
    
if ($page == "forum")
{
     include("forum.php");
}
    
?>
Mais tu dois tout de même créer toutes les autres pages contenant ton code ... Donc, tu pourrais utiliser la méthode brutale et toujours utiliser l'url rewriting !

Pour ta page index.php?page=contact

Tu fais ceci dans ton url rewriting :

Code:
RewriteEngine on
RewriteRule ^contact.htm$  /index.php?page=contact [L]
Sache qu'avec l'url rewriting, l'url initial ne s'affiche pas. Elle sera donc toujours en "contact.htm".
 

SkYlEsS

Elite
ozilrit a dit:
Skyless, rassure moi, on voit ce que je tape ?
Oui !

Il est vrai que t'as méthode est tout à fait correct également. =]
 
1er
OP
DeScH

DeScH

AstaLaVista
Oui, ne t'inquiete pas lol, la tienne est meme plus simple en écriture, je l'utiliserait bien :)
 
1er
OP
DeScH

DeScH

AstaLaVista
Tout compte fait je vais faire la méthode brutale. + sécurisée, + simple pour les liens.
 

SkYlEsS

Elite
DeScH a dit:
Tout compte fait je vais faire la méthode brutale. + sécurisée, + simple pour les liens.
Excellent choix ! ;-D
 
Statut
N'est pas ouverte pour d'autres réponses.
Haut