[résolu] modification du contenu d'une page en fonction d'un paramètre

modification du contenu d'une page en fonction d'un paramètre [résolu] - PHP - Programmation

Marsh Posté le 17-05-2010 à 17:35:05    

Bonjour,
 
Je cherche à créer une page web dynamique dont certains paragraphe de textes peuvent être différents selon le paramètre passé avec l'url.
Je précise car je ne suis pas sur de décrire mon problème de façon claire :
 
J'ai une page web avec par exemple un Titre et un sous-titre.
Je veux pouvoir afficher ma page dans différentes configurations : soit un titre T1 et un sous titre S1, soit un titre T2 et un sous-titre S2 selon que le paramètre passé avec l'url est 1 ou 2.
 
si la page est appelée par l'url toto.php?n=1, je veux que ce soit le titre T1 qui s'affiche et le sous-titre S1.
si la page est appelée par l'url toto.php?n=2, je veux que ce soit le titre T2 qui s'affiche et le sous-titre S2.
(en réalité, j'ai 4 ou 5 éléments de texte qui change selon que n=1, 2, 3 ou 4)
 
Quelle est la meilleure façon de faire ça en php ?
 
Je pensais faire différents fichiers texte avec les éléments de textes à afficher, puis faire une boucle if du type
if n= 1 {include ("titre1.inc.php" ); else if n=2 {include ("titre2.inc.php" );  else if n=3 etc. ...
 
mais ça ne me parait un peu long et pas très "élégant" comme code, y'a-t-il mieux ? à partir d'un tableau peut-être ? (je préfèrerai éviter une base sql pour si peu de données)
 
Merci d'avance pour vos idées


Message édité par haakon le 19-05-2010 à 18:03:58
Reply

Marsh Posté le 17-05-2010 à 17:35:05   

Reply

Marsh Posté le 17-05-2010 à 17:38:25    

Regardes du côté du MVC.
 
ps : et plutôt qu'un gros if, switch() est fait pour ça.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 17-05-2010 à 17:58:17    

Merci pour ces pistes.
D'après ce que j'ai trouvé en tapant php+mvc dans google, le constat est clair : je n'ai pas le niveau ! Par ailleurs ça a l'air un peu usine à gaz par rapport à ma problématique relativement simple (3 ou 4 configurations x 3 ou 4 éléments à modifier).
 
Je vais regarder la fonction switch.

Reply

Marsh Posté le 17-05-2010 à 18:34:03    

switch a l'air de coller, merci

Reply

Marsh Posté le 17-05-2010 à 20:25:47    

tu fait comme t'a marqué dans ta question mais a la place de ton nombre tu met ton nombre dans une variable  
soit un truc du genre :
$_get[''] = $nombre puis  include ("titre'$nombre'.inc.php" ) apres pour la syntaxe je suis pas sur mais c'est pour la forme

Reply

Marsh Posté le 17-05-2010 à 21:14:48    

un XML qui contient les textes
une XSL qui s'occupe du reste
PHP qui s'occupe de transformer le XML en HTML via la XSL
un echo derrière et c'est torché \o/


---------------
Blablaté par Harko
Reply

Marsh Posté le 18-05-2010 à 20:24:08    

Je ne connais pas le xml ni xsl, mais je vais regarder ça, merci.

Reply

Marsh Posté le 19-05-2010 à 09:33:54    

gatsu35 a écrit :

un XML qui contient les textes
une XSL qui s'occupe du reste
PHP qui s'occupe de transformer le XML en HTML via la XSL
un echo derrière et c'est torché \o/


 
 
Tu penses qu'à ça en ce moment, toi ! :D


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 19-05-2010 à 18:03:39    

Bon merci à tous,
Je suis resté sur une solution simple (c'est à dire à ma portée) : différents éléments de texte dans un fichier à part, puis fonctions include et switch avec un paramètre passé dans l'url ça me va bien.
Si j'ai un peu de temps plus tard je regarderai comment éviter de passer un paramètre dans l'url (si toutefois c'est possible).
 
XML + XSL ça a l'air puissant, mais il me faudrait un peu de temps pour m'y mettre car je n'y connais rien en xml. Je me contente aujourd'hui de html et php à un niveau assez basique.
 
Bref, merci pour vos réponses.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed