Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1846 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Chtite question de Templates VS bête tableau en PHP.

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Chtite question de Templates VS bête tableau en PHP.

n°366541
Hermes le ​Messager
Breton Quiétiste
Posté le 18-04-2003 à 15:26:03  profilanswer
 

Voili, voilà... Je continue toujours vaillamment et patiemment mon forum qui commence à prendre forme.  :D  
 
J'en suis actuellement au stade où je prévois la possibilité aux possesseur du forum de pouvoir changer les différents textes présents (genre : vous avez 2 nouveaux messages), ou même karrément la langue.
 
Evidemment, la première chose à laquelle on pense dans ce cas là, ce sont les templates. Oui, mais voilà... Après quelques petites recherches, il apparait que c'est pas tip-top en matière de perfs. Or, je recherche avant tout les perfs justement.  
Je ne me suis pas fais chier à générer une fois pour toutes mes CSS via PHP + les profils des users pour foutre en place un systeme de templates hypra-lourd.  :D  
 
Donc, je me dis bêtement que la solution la plus rapide serait sans doute un bête tableau dans une page incluse du style :
 
$langue = array("vous avez","un","des","nouveau","nouveaux","message","messages" etc...
 
Puis dans la page :
 
echo $langue[1],$langue[2] etc...
Qu'en pensez vous ?


Message édité par Hermes le Messager le 18-04-2003 à 15:41:40
mood
Publicité
Posté le 18-04-2003 à 15:26:03  profilanswer
 

n°366567
Hermes le ​Messager
Breton Quiétiste
Posté le 18-04-2003 à 15:40:41  profilanswer
 

bah, alors, elle inspire personne ma question ? Pourtant je la trouve intéressante...  :ange:

n°366572
beleg
黑社會
Posté le 18-04-2003 à 15:43:26  profilanswer
 

jai des fichiers de langue de type ...
 
FR.inc.php
hello = bonjour
 
DE.inc.php
hello = Guten Tag
 
que je parse pr remplir un tableau $trad
selon la langue chargée :
$trad["hello"] = "bonjour" ou "Guten Tag";
 
apres ds le code ...
<td><?=$trad["hello"]?></td>
 
et un systeme (+ou-) perso de templates pr separer le html pr le monsieur du design


Message édité par beleg le 18-04-2003 à 15:44:32
n°366576
Hermes le ​Messager
Breton Quiétiste
Posté le 18-04-2003 à 15:49:20  profilanswer
 

voui, voui, c'est bien à ça que je pensais justement. Mais moi ce qui m'intéresse particulièrement, c'est justement le système du template plus ou moin perso.  :D  Dans le cadre d'un forum le plus rapide possible, ne vaut-il pas mieux laisser les :
 
 
du HTML... puis d'un coup <?php echo $langue[motx] etc... ?> ... Du HTML
 
plutôt que justement de faire appel à un système de templates (sachant que concernant le graphisme, tout est sous forme de CSS déjà (ou presque tout) et que tout est modifiable déjà via la feuille de style, et même via un formulaire qui modifie la feuille de style) ?

n°366588
beleg
黑社會
Posté le 18-04-2003 à 15:57:48  profilanswer
 

y manque pas du texte ?
 
edit : ... oui HTML <?= ... ?> HTML sera le plus rapide ...


Message édité par beleg le 18-04-2003 à 16:28:45
n°366599
Sh@rdar
Ex-PhPéteur
Posté le 18-04-2003 à 16:05:51  profilanswer
 

tableaux tableaux tableaux :love:  :love:  
 
c'est encore le meilleur compromis vitesse / maintenabilité / modification
 
perso je parse des tableaux générés via la BDD c'est achement rapide
 
(3 tableaux pour environ 350 entrées, tout ça fois 2 pour FR / US)
ça marche du tonnerre !

n°366673
Hermes le ​Messager
Breton Quiétiste
Posté le 18-04-2003 à 16:55:49  profilanswer
 

Merci bien à tous les deux. Vous confirmez ce que je pensais déjà. Je vais donc pouvoir continuer sereinnement mon chti forum.
 
 :jap:  :hello:

n°366745
skylight
Made in France.
Posté le 18-04-2003 à 18:20:57  profilanswer
 

J'utilise aussi ce genre de tableau sur mon forum, les templates, j'ai testé, et c'est bien lourd  :D


Message édité par skylight le 18-04-2003 à 18:21:04
n°366853
MagicBuzz
Posté le 18-04-2003 à 21:40:37  profilanswer
 

J'utilise habituellement une table pour faire ça :
 


TRADUCTION
----------
[s]LABEL_CODE[/s]
[s]LANGUAGE_CODE[/s]
LABEL_TEXT


 
Puis une fonction : (ici, en ASP)
 

Code :
  1. function DisplayText(label_code)
  2.     dim rsLabel
  3.     set rsLabel = Server.CreateObject("ADODB.RecordSet" )
  4.     set rsLabel.ActiveConnection = cnx
  5.     rsLabel.Open "SELECT LABEL_TEXT FROM TRADUCTION WHERE LABEL_CODE = '" & replace(label_code, "'", "''" ) & "' AND LANGUAGE_CODE = '" & replace(session("LANGUAGE_CODE" ), "'", "''" ) & "'"
  6.     if not rsLabel.EOF then
  7.         DisplayText = rsLabel("LABEL_TEXT" )
  8.     else
  9.         DisplayText = label_code
  10.     end if
  11.     rsLabel.Close
  12.     set rsLabel = nothing
  13. end function


 
Inconvénient :
- Plus lent qu'un fichier de traduction.
 
Avantages :
- Evite de se trinballer en include un fichier de traduction qui peut être monstrueux. Sur un site qui utilise cette méthode, il fait 12 Mo ! - Du coup on l'a chargé en variable d'application, ce qui évite de le rechercher à chaque page. Par contre, on est obligé de redémarrer le site à chaque mise à jour des libellés : intervention manuelle sur le serveur -
- Gère autant de langues et de labels qu'on veut sans avoir à faire attention à quoique ce soit.
- Administrable via une interface d'administration.
- Pas besoin de toucher au code ni d'uploader des fichiers pour mettre à jour les libellés.
- Si un texte n'est pas traduit, alors on affiche son code, ce qui permet, pendant les phases de développement et de test, de voir rapidement un oubli de traduction.
- Une fois en prod, au lieu de retourner le code, on peut utiliser une traduction "standard", mettons que si l'anglais est la langue pas défaut, on peut récupérer le libellé anglais. En //, on peut loguer l'erreur ou envoyer un mail à une personne en fonction de la langue, pour la prévenir qu'un libellé n'est pas traduit.
- Permet de changer à chaud les libellés.


Message édité par MagicBuzz le 18-04-2003 à 21:42:30
n°366866
Hermes le ​Messager
Breton Quiétiste
Posté le 18-04-2003 à 22:23:03  profilanswer
 

Très intéressant ton commentaire, je t'en remercie.  :jap:  
 
Pour mon forum par contre, j'évite autant que possible d'utiliser la BDD et je vais procéder par des includes.
 
Par contre, comme tu l'as souligné, pas question de se retrouver au final avec un fichier langue.php de plusieurs megas.
 
Pour cela, je fais plusieurs fichiers langues dans un dossier avec deux types de fichiers : les fichiers commun.php qui utilisent des mots se retrouvant dans toutes les pages et en plus un fichier par page pour les expressions spécifiques à chaque page.
 
En tout cas, un grand merci pour ton aide. Il est certain que dans le cadre d'un site dynamique, j'aurais procédé comme tu le conseille. Mais pour un forum ou je cherche à tout alléger au maximum, ce n'est pas possible. Pour te donner une idée de mon travail, tout ce qui concerne les caractéristiques graphique et de mise en page sont générées une fois pour toutes via php dans des feuilles de style. Les profils des users sont également générés une fois pour toutes. Comme tu peux le voir, dès que qqc peut se passer d'une BDD, je le fais. On verra au final ce qui en résultera.
 
A +  :hello:

mood
Publicité
Posté le 18-04-2003 à 22:23:03  profilanswer
 

n°366963
skylight
Made in France.
Posté le 19-04-2003 à 00:01:07  profilanswer
 

Il est ou ton forum ? [:totozzz]

n°366969
Hermes le ​Messager
Breton Quiétiste
Posté le 19-04-2003 à 00:06:04  profilanswer
 

Skylight a écrit :

Il est ou ton forum ? [:totozzz]


 
pas encore opérationnel, mais il avance...  :)  
 
Dès qu'il sera suffisamment fonctionnel, je vous fais signe. Pas de problème. d'ici quelques semaines j'imagine. J'ai fait tout ce qui est XHTML, génération des CSS via PHP, les profils, les tables, etc...  
 
Là j'en suis aux langues/templates + tout ce qui touche à la sécu...
 
Un point important :
 
Le forum que je prépare pourra être inclus dans une cellule d'un tableau, car toutes les CSS sont en relative et ce comporte pas de balise body.  
C'est très pratique je trouve si on veut l'inclure dans un site après.

n°366973
skylight
Made in France.
Posté le 19-04-2003 à 00:07:10  profilanswer
 

Quand tu parles de génération de CSS, celà veut dire que tu créé un FICHIER de css par utilisateur (et une fois suffit, selon tes dires) ?
 

n°366975
Hermes le ​Messager
Breton Quiétiste
Posté le 19-04-2003 à 00:09:55  profilanswer
 

Non, l'apparence du forum est décidée par l'admin. Je vais pas recreer un phpbb ou équivalent super lourd, ni un CSS par user. Faut pas déconner quand même.
Par contre, TOUTE la charte graphique repose entièrement sur les CSS, et l'admin a à sa dispo. un formulaire qui lui permet de tout changer sans que cela affecte la BDD ou même les fichiers PHP.
;)
 
Par contre pour le profil de chaque user, je cré un fichier par user que je n'ai qu'à inclure. Cela limite énormément l'accès à la BDD.

n°366979
skylight
Made in France.
Posté le 19-04-2003 à 00:11:57  profilanswer
 

Héhé, au final, faut voir :)
 
Moi, toutes les informations d'un membre sont dans un n-uplet de la table users ...
Une requete, et j'ai tout. Reste plus qu'a inclure le CSS par défaut .. (et oui, moi je peux pas appliquer ton système vu que mon forum gère les multiforums, donc personnalisation en fichiers impossible)

n°366983
Hermes le ​Messager
Breton Quiétiste
Posté le 19-04-2003 à 00:15:49  profilanswer
 

Skylight a écrit :

Héhé, au final, faut voir :)
 
Moi, toutes les informations d'un membre sont dans un n-uplet de la table users ...
Une requete, et j'ai tout. Reste plus qu'a inclure le CSS par défaut .. (et oui, moi je peux pas appliquer ton système vu que mon forum gère les multiforums, donc personnalisation en fichiers impossible)


 
Tu peux parfaitement avoir un CSS par forum. C'est pas compliqué. D'ailleurs, pour mon forum, j'aurais pu proposer une liste de CSS dispos ou permettre à l'admin de sauver son CSS dans une liste de CSS sans faire intervenir la BDD.
 
oopss edit :
 
Pour la 2° partie de ta réponse, c'est clair que ma soluce est impossible. trop de membres. ;)


Message édité par Hermes le Messager le 19-04-2003 à 00:17:00
n°366989
skylight
Made in France.
Posté le 19-04-2003 à 00:20:48  profilanswer
 

J'étais en train de me dire ...
 
Car un fichier par user, ca ferait énornement de fichiers sur ton serveur ;)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Chtite question de Templates VS bête tableau en PHP.

 

Sujets relatifs
question simple[PHP] petit probleme avec boucle
[PHP] probleme[PHP] parse error au début d'une fonction ...
[PHP] Les accents ne sont pas gérés ! HELP[PHP] Gestion courrier, documents....
Authentification en PHP[Oracle&PHP] Execution de procedures stockees -> à voir !
D'ou viens le problème? installation PHP ?? je vois pas la...tableau $_POST
Plus de sujets relatifs à : Chtite question de Templates VS bête tableau en PHP.


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR