Jump to content
Sign in to follow this  
d4v3ng3r

Créer un titre dynamique

Rate this topic

Recommended Posts

Bonsoir à tous!!

Je sait il est très tard mais il fallait que je poste maintenant sinon j'allais oublier ensuite. :blushing:

Le titre du sujet dit tout: Etant débutant en PHP, j'aimerais faire en sorte que le titre change en fonction de la page appellée par l' <include>.

Mon site est composé d'une page index.php, qui elle même comporte un <div> gauche pour <include> le menu, un <div> supérieur pour le logo du site, et un <div> central qui <include> la page appellée par la fonction $_GET, ce qui me donne des adresses de page du style: monsite.hebergeur.fr/index.php?page=accueil.

Jusque là tout va bien,mais voici "mon" dilemne:

Je voudrais que le titre de mon site change en fonction de la page qui s'affiche dans le <div> central. :idea:

Tout comme ce site par exemple, il y a une partie statique puis le titre de la page affichée.

Si possible est-ce que vous auriez d'autres solutions que le recours a la BDD ??? :thumbdown:

Merci d'avance pour vos réponses que j'attends impatiament!! Et s'il vous plaît ne vous moquez pas je suis débutant !! Je veux apprendre. :)

Bonne nuit :!:

Share this post


Link to post
Share on other sites

Salut,

Comme tu récupères le type de page que tu veux au travers de ton url "monsite.hebergeur.fr/index.php?page=accueil", tu peux récupérer avec la variable "page" le nom de la page.

Ce qu'il faut que tu fasses c'est de mettre entre les balises <title> la variable $page ce qui t'affichera "accueil".

Maintenant si tu veux que la première lettre soit en majuscule, utilise la fonction ucfirst() avec ta variable, càd: ucfirst($page)

Voilà et bonne chance. ;)

Share this post


Link to post
Share on other sites

Il faut quand même faire gaffe quand on se base sur une variable pour faire un include et s'assurer qu'elle ne puisse pas être injectée sinon on se retrouve avec une faille RFI :excl:

Share this post


Link to post
Share on other sites

Je conseillerais plutôt de faire un tableau qui à une variable page(que l'on récupére et que l'on sécurise avec strip_tags(), htmlentities(), addslashes()) associe un titre, cela permet de sécuriser un maximum.

Edited by K-Ola

Share this post


Link to post
Share on other sites

merci pour toutes vos réponses !!!

Alexxx ton idée est interessante mais en fait les noms de pages que j'ai donné pour la variable "page" ne sont pas tres élègants... Ca ne ferait pas un "joli" titre :S .. t'as une solution pour renommer les titres que j'ai donné à mes variables "pages" ??

K-Ola ton idée m'interresse aussi, mais en fait je sait pas comment faire :S .. Tu peux m'expliquer stp ? Tu peux me montrer un exemple de code ?

Merci :)

Share this post


Link to post
Share on other sites

Donc avec des pseudo frames, tu aurais,avant la balise title biensûr :

/*
Assainissement de la variable $p
qui permet de minimiser les risques éventuels d'injections
*/
$p=$_GET['page'];
$p=htmlentities($p);
$p=strip_tags($p);
$p=addslashes($p);


/*On fait la correspondance page->titre */
$pagetitre = array(
'accueil' => 'Accueil',
'contact' => 'Nous contacter',
'mentions-legales' => 'Mentions Légales'

);
if ( (isset($pagetitre[$p])) ) {
$titre=$pagetitre[$p];
} else {
$titre=$pagetitre['accueil'];
}
?>

Ensuite un peu plus loin tu as l'affichage du titre avec par exemple:

  <title> Nom de ton site  -
<? echo $titre ?>
</title>

Puis encore plus loin tu as la gestion de tes pseudos frames:

	 
<div id="contenu">
<?php
$pageOK = array(

/*Tes contenus*/
'accueil' => 'include/accueil.php',
'contact' => 'include/contact.php',
'mentions-legales' => 'include/mentions-legales.php',

);

if ( (isset($p)) && (isset($pageOK[$p])) ) {
include($pageOK[$p]);
} else {
include('include/accueil.php');
}
?>
</div>

Edited by K-Ola

Share this post


Link to post
Share on other sites

K-Ola, franchement, j'ai RAREMENT vu une explication aussi simple clair et net pour les titres dynamiques !!!! :clap: Merci infiniment !!!

Tu devrait rédiger des tutoriaux crois moi. :thumbsup:

A vue d'oeil ça à l'air sur de fonctionner,je met ça en place et je te met au courant le plus rapidement possible !

Merci encore ! :D

Bonne nuit :handshake:

Share this post


Link to post
Share on other sites

C'est clair pour la faille, on ne sait jamais.

La solution que j'ai donné est basique et ne traite pas de la sécurité sachant qu'elle doit déjà être traitée aupparavent.

Alexxx ton idée est interessante mais en fait les noms de pages que j'ai donné pour la variable "page" ne sont pas tres élègants... Ca ne ferait pas un "joli" titre :S .. t'as une solution pour renommer les titres que j'ai donné à mes variables "pages" ??

Utilise le système à K-Ola et après si tu veux changer le titre de la page, suffira juste de le modifier dans le tableau "$pagetitre". :)

Share this post


Link to post
Share on other sites

Bonsoir ( ou bonne nuit plutot )

desolé du temps que j'ai pris... probleme d'internet pendant 2 jours :S

Et je voudrais dire un grand merci a K-Ola pour ton code, qui m'as été d'une aide DIVINE !!! Il fonctionne par-fai-te-ment !

j'avais googelé pendant des jours, j'etait toujours tombé sur des codes en carton qui tiennent grâces à des petites ficelles, et la tu m'as apporté exactement ce que je cherchais. simple et efficace. malheureusement mon niveau en php n'etait pas encore assez elevé pour le trouver tout seul.. donc merci à toi, et a Alexx aussi pour son aide, et a binarygirl pour sa mise en garde de la faille RFI.

Longue vie a webmaster-hub /!\

A bientôt !

Share this post


Link to post
Share on other sites

Content d'avoir pu t'aider ! :)

A bientôt !

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...