|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Nouveau Membre du Club
![]() Inscription : juillet 2010 Messages : 196 ![]() |
Bonsoir,
je me pose des questions quand à la mise en page de mon code php et html. Est ce 'propre' dans une page d'utiliser un if(isset $_SESSION['variable']) à plusieurs reprises pour afficher un contenu uniquement si l'administrateur est connecté et si il ne l'est pas alors on affiche pas le contenu ou alors existe t-il une manière plus 'propre' de le faire ? j'espère avoir été clair. Merci d'avance ! |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() Inscription : septembre 2010 Messages : 1 239 ![]() |
C'est souvent plus simple de faire une page administrateur qui sera protégée par ta variable de session et une page visiteur séparée.
Mais en fait tout dépend du contexte, à toi de voir si cela ne complique pas trop les choses.
__________________
- Réalisations - Interface graphique : génération en javascript d'objets défilants, texte et/ou images, mode horizontal ou vertical. |
|
|
00
|
|
|
#3 | ||
|
Membre du Club
![]() Inscription : mars 2007 Messages : 116 ![]() |
personnellement, j'inclus des scripts avec formulaire et édition avec un code du genre:
Code :
Mais c'est reposer la question, je ne connais pas les 'bonnes pratiques'... |
||
|
|
00
|
|
|
#4 | |||||
![]() ![]() Benjamin DelespierreDéveloppeur Web Inscription : février 2010 Messages : 2 984 ![]() |
Hello
Je profite de ce post pour faire une piqure de rappel PHP à été créé au départ pour être intégré dans du HTML, je trouve personnellement inutile le battage qui est fait autours des moteurs de templates massivement utilisés en ce moment (SMARTY c'est à toi que je parle). On peut très bien écrire du phtml (c'est d'ailleurs une extension valide pour PHP) à condition de respecter certaines règles: - bien séparer les traitements de l'affichage: effectuer des requêtes, faire des calculs lourds ou des algorithmes complexes en plein milieu d'un flux xhtml doit être strictement proscrit - penser à utiliser autant que faire se peut le short open tag <?=$ma_var?> (à condition que la directive short_open_tag soit à On dans le php.ini), ceci à des fins évidentes de lisibilité - éviter les accolades pour délimiter des blocs: PHP peut utiliser une syntaxe proche de celle de bash (voir annexe 1) - eviter les attributs style, onClick et autres éléments intrusifs: les styles vont dans une feuille de style séparée et les évenements JavaScript doivent être attaché dans un script séparé (voir Annexe 2) - garder une indentation propre et ne jamais dépasser les 140 caractères en longueur (pour affichage sur un écran 17 pouces), ceci afin d'améliorer la lisibilité du code - conserver à l'esprit que celui qui reprendra votre code derrière vous est un serial-killer qui connait votre adresse Annexe 1: utilisation des structures de contrôles au sein des vues Code :
Annexe 2: du bon usage des styles et des scripts Code :
@BlindeKinder Pense à utiliser isset sinon gare aux E_WARNING qui viendront polluer l'error log d'apache @polux31 Citation:
Tu trouvera de la documentation par ici: http://julien-pauli.developpez.com/t...vc-controleur/ Je ne saurais que trop te conseiller de formaliser autant que possible ton application avant de te lancer dans le code. Réfléchis bien à ce que tu veux faire et comment tu souhaite y arriver, prends un bloc de papier et décrit le cheminement de ton utilisateur et les différentes pages impliquées. C'est sûr, c'est laborieux, mais ça à le mérite de t'éviter de sérieux maux de tête quand (et ce 'quand' arrivera tôt ou tard) tu devras reprendre ce que tu as fait. Exemple habituel (j'y suis confronté en permanence): demande du client xxx "je souhaite changer la couleur des liens pour les mettre en rose fushia", pas de chance le programmeur qui a fait le site à mis des style="color: black;" dans toutes les balises ancre (<a>); c'est parti pour des heures de refactoring de code. Alors qu'avec l'utilisation d'une feuille de style, c'est juste changer UNE ligne. Également, évite d'utiliser des WYSIWYG comme Dreamweaver, c'est tentant mais le code produit est vraiment dégueulasse et impossible à maintenir (j'ai passé 1h à indenter correctement un code de 1000 lignes qui servait pour même pas 20 lignes d'affichage et une heure de plus à faire tous les changements). A toi de jouer
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même). Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...". Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug. Les boutons et existent, servez-vous en
|
|||||
|
00
|
|
|
#5 |
|
Nouveau Membre du Club
![]() Inscription : juillet 2010 Messages : 196 ![]() |
Merci à vous tous et particulièrement à Benjamin pour ton grand investissement.
En (très) bref, en ce qui concerne mon problème, il est plutôt conseillé de faire une page pour les users lambda et une autre pour l'admin. Merci ! |
|
|
00
|
|
|
#6 | |
|
Membre Expert
![]() Inscription : septembre 2010 Messages : 1 239 ![]() |
Citation:
Surtout pas ! Si les short_open_tag sont désactivés par défaut depuis php5, ce n'est pas par hasard. Cela provoque des conflits si l'on veut utiliser conjointement du php et du xml dont la déclaration est <?xml... Donc en plus d'avoir un code peu portable (short_open_tag désactivé par défaut en php5), c'est un code qu'il faudra reprendre en cas d'utilisation des balises <?xml. Alors on se prend pas la tête et on utilise la balise d'ouverture "longue" <?php
__________________
- Réalisations - Interface graphique : génération en javascript d'objets défilants, texte et/ou images, mode horizontal ou vertical. |
|
|
|
00
|
|
|
#7 | |
|
Membre du Club
![]() Inscription : mars 2007 Messages : 116 ![]() |
Citation:
Pour revenir au sujet, j'aime bien pour l'édition voir la page telle quelle et avoir un formulaire d'édition en plus (c'est plus une question qu'une contradiction)... mais je n'ai jamais travaillé sur de très gros projets. ça me parait plus clair d'ailleurs pour le code et plus facile à maintenir d'avoir des formulaires/scripts inclus, que d'avoir "deux sites". |
|
|
|
00
|
|
|
#8 | |
|
Membre Expert
![]() Inscription : septembre 2010 Messages : 1 239 ![]() |
Citation:
Pour ce qui est du choix entre faire une page ou deux, encore une fois, tout dépend du contexte et de la "ressemblance" entre les pages. Si au final ta page administrateur n'a que peu de chose en commun avec la page visiteur, ça complique grandement la vie de ne vouloir faire qu'une page qui devra être modifiée à tous les niveaux, et ça va pas aider le serveur de charger un code plus lourd parfois pour rien. Par contre s'il s'agit d'un simple formulaire en plus ce n'est pas la même problématique
__________________
- Réalisations - Interface graphique : génération en javascript d'objets défilants, texte et/ou images, mode horizontal ou vertical. |
|
|
|
00
|
|
|
#9 | |
|
Membre du Club
![]() Inscription : mars 2007 Messages : 116 ![]() |
Citation:
En même temps, peut-être que je m'y prends mal, d'où ma question. J'ai fini par travailler vaguement en MVC par intuition, et là je m'y met plus sérieusement... Mais tu réponds donc à ma question: en effet ce sont finalement des formulaires, même parfois complexes, mais qui peuvent bien apparaître au bas de la page. Par opposition à une gestion complexe genre CMS avec plein de menus et d'options... |
|
|
|
00
|
|
|
#10 | |
|
Membre Expert
![]() Inscription : septembre 2010 Messages : 1 239 ![]() |
Citation:
__________________
- Réalisations - Interface graphique : génération en javascript d'objets défilants, texte et/ou images, mode horizontal ou vertical. |
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com