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

  FORUM HardWare.fr
  Programmation
  PHP

  echo '<html>' ou <html>

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

echo '<html>' ou <html>

n°991667
dandy
Posté le 23-02-2005 à 18:22:17  profilanswer
 

Bonjour à tous !  
Je me demande d'un coup si il vaut mieux faire :
 

Code :
  1. $ecrire = '<h1>'.$titre.'</h1>';
  2. echo $ecrire;


 
OU
 

Code :
  1. <html>
  2. ...
  3. <h1><?php echo $titre; ?></h1>
  4. ...
  5. </html>


 
Je sais, c'est sûrement très con comme question mais je suis quand même intrigué  :??:

mood
Publicité
Posté le 23-02-2005 à 18:22:17  profilanswer
 

n°991686
esox_ch
Posté le 23-02-2005 à 18:54:34  profilanswer
 

Perso j'utilise aucune des 2, mais je serais tenté de faire :
 
<?php
blablabla
?>
mon html
<?php
echo $titre;
?>
html  
...
 
N.B: Il existe d'autres maniere de faire un echo sur plusieurs lignes grace a EOF, ou a la syntaxe abbregée du echo


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°991690
omega2
Posté le 23-02-2005 à 18:57:04  profilanswer
 

Personellement, je trouves la premiére méthode plus facile à lire.
Dans une page un peu évolué, on a vite fait de ne pas voir un petit bout de php perdu dans la page.
En pluis, le jour ou tu voudras utiliser les sessions ou les cookies ou utiliser le fonction header, ca te sera plus simple de modifier la page.

n°991695
omega2
Posté le 23-02-2005 à 18:58:35  profilanswer
 

EOF = end of file
Utiliser ça avant en dehos de la recherche de la fin d'un fichier, c'est un coup à avoir des bugs inatendus.

n°991696
dandy
Posté le 23-02-2005 à 19:01:27  profilanswer
 

Oké merci pour vos réponses, j'utilise aussi la première option également pour une question de clarté.  

n°991762
cerel
Posté le 23-02-2005 à 19:53:15  profilanswer
 

Moi je suis un partisant des templates...
 
template.tpl

Code :
  1. <html>
  2. ...
  3. <h1>{titre}</h1>
  4. ...
  5. </html>


 
page.php

Code :
  1. require_once(_templatepower_);
  2. $tpl = new template('template.tpl');
  3. $tpl->prepare();
  4. $tpl->assign('titre', $titre);
  5. $tpl->printToScreen();


 
Voila, de cette facon on separe le code html pur, du code php.

n°991772
omega2
Posté le 23-02-2005 à 19:59:10  profilanswer
 

Moi aussi j'utilise un template, mais c'était pas le sujet de la discution. ;)

n°991785
esox_ch
Posté le 23-02-2005 à 20:17:00  profilanswer
 

Parseur XML pour moi :p


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°991865
dandy
Posté le 23-02-2005 à 21:16:17  profilanswer
 

Ouai le template je vais bientôt m'y mettre.
Et le parseur xml esox tu vas peut-être pouvoir m'aider :
comment je peux faire pour traiter deux xml avec un xslt ou inclure des xslt dans des autres. :??:

n°991989
esox_ch
Posté le 24-02-2005 à 00:27:13  profilanswer
 

Je comprends pas trop ta question :??: . Qu'est-ce qui te pose probleme?? Les flux XML/XSLT dans php ou juste les ficher xml + xsl ?


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
mood
Publicité
Posté le 24-02-2005 à 00:27:13  profilanswer
 

n°991991
duncan_mc_​leod
Posté le 24-02-2005 à 00:38:56  profilanswer
 

Il vaut mieux mettre le html d'un coté et le php de l'autre... l'affichage de balises html par echo est nettement moins rapide meme si ca se sent pas des masses sur des petits sites.

n°992071
soju
One shot !
Posté le 24-02-2005 à 10:11:45  profilanswer
 

omega2 a écrit :

EOF = end of file
Utiliser ça avant en dehos de la recherche de la fin d'un fichier, c'est un coup à avoir des bugs inatendus.


non, dans ce cas là EOF est juste un identifiant pour la syntaxe heredoc. Une syntaxe très pratique, héritée de perl, cela permet de délimiter les chaînes sans se prendre la tête avec des \
 
http://www.nexen.net/docs/php/anno [...] eredoc.php

n°992095
FlorentG
Posté le 24-02-2005 à 10:31:05  profilanswer
 

esox_ch a écrit :

Parseur XML pour moi :p


 
+50
 

<h1></h1>


 

Code :
  1. $h1 = $doc->get_elements_by_tagname('h1')[0];
  2. $h1->set_content($titre)

n°992661
rompi
Posté le 24-02-2005 à 18:02:38  profilanswer
 

J'ai pas encore essayé les templates pour ma part, je suis passez au framework java d'apache STRUT, désolé...
  Beaucoup de personnes de ma boite pense que les template c'est "rajouter une couche la ou y'en a pas besoin", j'ai pas testé alors je n'ai pas polémiqué non plus...
 
Pour ma par la deuxième syntaxe et bien plus lisible, et bien plus pratique également, là c'est simple, mais pour un <input/> par exemple

Code :
  1. <input type="text" name="toto" value="<?php echo $toto ?>" />
  2. ou 
  3. <?php echo "<input type=\"text\" name=\"toto\" value=\"$toto\" />";?>


 
Ca a aussi l'avantage de ne pas avoir a écrire de \n, toujour bien
pratique d'avoir un source HTML lisible...
 

omega2 a écrit :

Personellement, je trouves la premiére méthode plus facile à lire.
Dans une page un peu évolué, on a vite fait de ne pas voir un petit bout de php perdu dans la page.
En pluis, le jour ou tu voudras utiliser les sessions ou les cookies ou utiliser le fonction header, ca te sera plus simple de modifier la page.


 
En revanche il faut avoir un éditeur qui met en valeur le contenu entre <?php et ?>. Et c'est bien dommage que php ne possède pas une balise comme la jsp qui évite d'écrire le echo ( <%= %> pour les javateux ).
Pour ce qui est des sessions et cookie je vois pas le rapport


Message édité par rompi le 24-02-2005 à 18:03:16
n°992731
esox_ch
Posté le 24-02-2005 à 18:53:56  profilanswer
 

rompi a écrit :

J'ai pas encore essayé les templates pour ma part, je suis passez au framework java d'apache STRUT, désolé...
  Beaucoup de personnes de ma boite pense que les template c'est "rajouter une couche la ou y'en a pas besoin", j'ai pas testé alors je n'ai pas polémiqué non plus...
 
Pour ma par la deuxième syntaxe et bien plus lisible, et bien plus pratique également, là c'est simple, mais pour un <input/> par exemple

Code :
  1. <input type="text" name="toto" value="<?php echo $toto ?>" />
  2. ou 
  3. <?php echo "<input type=\"text\" name=\"toto\" value=\"$toto\" />";?>


 
Ca a aussi l'avantage de ne pas avoir a écrire de \n, toujour bien
pratique d'avoir un source HTML lisible...
 
 
 
En revanche il faut avoir un éditeur qui met en valeur le contenu entre <?php et ?>. Et c'est bien dommage que php ne possède pas une balise comme la jsp qui évite d'écrire le echo ( <%= %> pour les javateux ).
Pour ce qui est des sessions et cookie je vois pas le rapport


 
Faux et ultra faut, ca existe


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°992751
rompi
Posté le 24-02-2005 à 19:05:01  profilanswer
 

et c'est quoi cette balise magique ?

n°992757
KangOl
Profil : pointeur
Posté le 24-02-2005 à 19:07:55  profilanswer
 

bha

Code :
  1. <p><?=$paragraphe;?></p>


:o


---------------
Nos estans firs di nosse pitite patreye...
n°992764
rompi
Posté le 24-02-2005 à 19:14:09  profilanswer
 

Autant pour moi, j'avais jamais vu,
merci pour l'info


Message édité par rompi le 24-02-2005 à 19:14:38
n°992806
cerel
Posté le 24-02-2005 à 19:49:27  profilanswer
 

Avec les templates on rajoute peut-etre une couche, mais cela permet de separer le code php et html. Et cela au moment de lire le code c'est apreciable.
 
 
Sinon concernant le systeme de templates que j'ai presente et le parseur XML, je prefere les templates. En effet, je peux tres facilement, par exemple, metre la meme valeur a plusieurs endroits sans devoir changer le code php.
Par exemple, je peux modifier ma precedente template de cette facon :
template.tpl

Code :
  1. <html>
  2. <head>
  3. ...
  4. <title>{titre}</title>
  5. ...
  6. </head>
  7. ...
  8. <h1>{titre}</h1>
  9. ...
  10. </html>


 
Mon code php restera exactement le meme:
 
page.php

Code :
  1. require_once(_templatepower_);
  2. $tpl = new template('template.tpl');
  3. $tpl->prepare();
  4. $tpl->assign('titre', $titre);
  5. $tpl->printToScreen();


 
Alors qu'avec le parseur XML, il faudra modifier le code php pour "refleter" les changements de la template.
 
Je ne dis pas que les templates soient la solution ultime, cependant j'estime qu'elles sont la meileure solution actuelle (en tout cas pour moi).
Par exemple, mes templates ont un "probleme". Je ne peux pas "ajouter" une valeur qui n'est pas prevue par php. Donc je ne pourrais pas ajouter par exemple "titre2" si je ne l'ai pas prevu a l'avance dans le code php.  
Il me semble que Smarty permet ce genre de choses, mais je le trouve "trop gros" pour l'usage que je fais de mes templates. Donc pour l'instant je fait avec cet inconvenient.


Message édité par cerel le 24-02-2005 à 19:50:30
n°992850
esox_ch
Posté le 24-02-2005 à 20:46:14  profilanswer
 

Oui je suis assez d'accord, cependant je préfère quand meme utiliser un parseur XML parcequ'avec les templates a un moment tu es limité.
 
Disons que tu veuilles faire un forum, tu vas prevoir une plage de données pour afficher les messages avec ton template, ok, mais apres les message eux meme tu vas les afficher comment? Il te faudra un 2ème template qui met en place les differentes parties du message (nom du posteur, date, message,...), qui sera ensuite redirigé vers le 2ème parseur de templates qui va l'integrer dans la place qui lui revient. Non seulement ce processus n'est pas prevu par default (si je me trompe pas, la seule methode de recuperer qqch de parsé par le systeme de templates est la commande show() qui renvoie directement a l'ecran, sans return), bien entendu on peut modifier ca pour que ca retourne qqch (c'est ce que j'avais fait pour la version precedante de mon forum) mais je trouve que c'est pas top. On ouvre 2 fichers, avec je sais pas combien d'expressions regulieres pour chaqu'un (j'ai pas lu la source de PEAR concernant les templates) au lieu d'avoir un petit systeme de XML qui recupere les données dans une bdd et les envoie directement se faire mettre en page par un parseur xslt.
 
Honnettement je trouve ça beaucoup plus elegant, et plus pratique ... mais c'est une opinion personnelle


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°993090
omega2
Posté le 24-02-2005 à 23:12:54  profilanswer
 

Personellement, je n'ai pas utiliser les extension de PEAR pour faire les template.
J'ai juste créé mes propres fonctions qui découpent le modéle en niveau logique et avec plusieurs textes possible pour un seul niveau afin de diférencier des données de significations différentes.
Par exemple, j'ai une colone menu qui peut être affiché d'une maniére, et les messages du forum d'une autre.
Et pour pas avoir à taper 10 fois le même code (x)html dans le modéle, je gére un systéme de texte par défaut. (défini au niveau du modéle) Ca évite aussi de devoir modifier tous les modéles si on rajoute une possibilité d'affichage au niveau du code php.
Enfin bon, chacun ses besoins. ;)
 
rompi > Le jour ou les gas de ta boite devront modifier 200 fichiers de codes par ce que le client veut changer la tête de son site, ils comprendront que c'est pas si inutile que ça comme "couche suplémentaire". ;)

n°993164
cerel
Posté le 25-02-2005 à 01:07:28  profilanswer
 

esox_ch : Pour information je n'utilise pas Smarty, ni un systeme de templates en Pear.
 
Le systeme que j'utilise s'appelle TemplatePower. Ce dernier peut "retourner" le contenu parse de la template.
Par exemple, dans un site que j'ai faits, j'ai une template pour le fichier principal du site, celui qui defini la structure.
index.tpl:

Code :
  1. <html>
  2. <head>
  3. // metas  
  4. <title>{pageTitre}</title>
  5. // ...
  6. </head>
  7. <body>
  8. <div id="contenu">
  9. {contenu}
  10. </div>
  11. <div id="menu">
  12. {menu}
  13. </div>
  14. </body>
  15. </html>


 
Ensuite dans mon index.php je ne fais "qu'associer" les variables avec la var correspondante de la template.  
Or pour le "contenu" je passe par des templates selon le "module" qui doit etre affiche ou non.
Je n'affiche du texte qu'a la fin d'index.php. Avant je ne fais aucun echo, ni print, ni rien du tout. Tout ceci grace au fait que TemplatePower me permet de manipuler le contenu des templates une fois parse comme une simple variable.
 
Je tiens egalement a dire que PowerTemplate accepte soit un nom de fichier comme template, mais accepte egalement une "variable" qui contient la template. Par consequent tu pourrais par exemple lire ta template depuis un BDD puis la passer a TemplatePower sans problemes.
 
 
Personellement je l'adore ce petit TemplatePower (qui est presque inconnu c'est bien dommage) et pour MON utilisation il me convient tres bien.  
 
Neanmoins je concois tres bien que tu preferes ton parseur XML. Les gouts et les couleurs, ca se discute pas :D
 
 
Enfin pour revenir un peu au sujet du topic, je pense que le conseil d'utiliser les templates (ou un parseur XML) a un debutant est une bonne chose. Cela lui permeteras d'avoir un code beacoup plus clair qu'en "liant" le php et l'html. Et c'est justement parceque c'est un debutant qu'il faut des le depart lui conseiller ce genre de systemes (qui peuvent sembler "lourds" ). Etant donne qu'il debute il n'as pas encore de mauvaises habitudes. Une fois qu'il commencera a matriser le langage, il sera tres dur de lui faire perdre "les mauvaises habitudes".
 
Je sais de quoi je parle, je suis passe par la. Quand j'essaye de debuger du code que j'ai pondu il y a 2 ans, c'est dur de separer le code php de l'html ...

n°993197
esox_ch
Posté le 25-02-2005 à 07:52:08  profilanswer
 

Ah d'accord, ton templatepower a l'air bien fait :D
Un jour ou l'autre faudra que je fasse un bentch pour voir laquelle des 2 methodes stress moins le serveur ... :D


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°993385
j_lecruel
☀ ☁ ☂
Posté le 25-02-2005 à 12:10:41  profilanswer
 

KangOl a écrit :

bha

Code :
  1. <p><?=$paragraphe;?></p>


:o


 
Ceci dit l'utilisation de ces balises dites courtes sont vraiment déconseillées.

n°993387
FlorentG
Posté le 25-02-2005 à 12:11:51  profilanswer
 

J'crois que je vais m'orienter vers des solutions style XSL pour ces histoires de templates...

n°993395
skylight
Made in France.
Posté le 25-02-2005 à 12:27:15  profilanswer
 

[:flag]

n°993401
skeye
Posté le 25-02-2005 à 12:39:52  profilanswer
 

et moi je crois que je vais tester le passage à templatepower sur mon machin en cours, pour voir ce que ça donne...[:dawa]
 
[edit]
 
en fait non, c'est gpl, et j'ai pas envie de m'y mettre à fond avant de savoir ce qui va advenir de mon code...[:joce]


Message édité par skeye le 25-02-2005 à 14:47:25

---------------
Can't buy what I want because it's free -
n°994110
rompi
Posté le 26-02-2005 à 13:18:18  profilanswer
 

omega2 a écrit :


rompi > Le jour ou les gas de ta boite devront modifier 200 fichiers de codes par ce que le client veut changer la tête de son site, ils comprendront que c'est pas si inutile que ça comme "couche suplémentaire". ;)


 Le jour où on m'écoutera vraiment dans ma boite, les poules auront des dents...
 
 J'aime beaucoup XSL, et les derniers "trucs" que j'ai fait, sont basé sur le parse de structure XML...
 Depuis j'ai fait de la jsp pour faire l'intarface d'une appli java et j'ai découvert strut d'apache... Et avec un Framework de ce genre on sépare énormément de chose, c'est assez lourd effectivement a écrire, mais à maintenir c'est bien mieux...
 
Pour en revenir à Php, quand j'écris du code avec des echo '<html>' ou <html> j'ai un peu l'impression d'écrire de "l'assembleur pour page web".
Alors sans doute que quand je retournerai a Php je vais passez au template, mais je pensais surtout passez à un framework. Google m'a dit que ca existais... Quelqu'un d'entre vous a déjà essayé?

n°994755
FlorentG
Posté le 27-02-2005 à 16:21:37  profilanswer
 

Tu veux un framework pour PHP ?

n°994835
cerel
Posté le 27-02-2005 à 17:43:33  profilanswer
 

Ah au fait je viens d'y penser.
Un autre avantage des templates compares au parseur XML, c'est que les templates peuvent etre utilisees pour d'autres choses.
Par exemple j'ai cree une template qui contient le corps du mail qu'envoie mon programme (email texte et pas html).
 
Je suis actuellement en train d'implementer des "short urls" ou "pretty urls" sur un site, et j'ai l'intention d'utiliser un fichier .htaccess. Mais la ou cela devient marrant c'est que ce fichier sera defini dans une template.
Vous vous demandez surement pourquoi, en fait c'est parceque dans la partie admin, il est possible de rajouter des pages "a la volee". Donc du coup, j'ai besoin d'un fichier .htaccess qui puisse etre modife. J'aurais pu le faire via un fopen et fwrite. Mais le fait d'utiliser une template me permet d'avoir une partie du fichier que je peux modifier sans devoir modifier le code php.
Apres il suffira que je recupere simplement le "contenu" de la template (une fois parse) et d'ecrire le fichier .htaccess. :D
 
 
Sinon pour en revenir a la question, je ne connais pas de "framework" pour php. Mais le systeme que j'utilise est assez facile a metre en place et ne necessite pas de framework.
 
Qu'est-ce que tu attends d'un framework precisement ?

n°994841
FlorentG
Posté le 27-02-2005 à 17:47:19  profilanswer
 

cerel a écrit :

Ah au fait je viens d'y penser.
Un autre avantage des templates compares au parseur XML, c'est que les templates peuvent etre utilisees pour d'autres choses.
Par exemple j'ai cree une template qui contient le corps du mail qu'envoie mon programme (email texte et pas html).


C'est l'inverse :o L'XML fonctionne partout sur tous les logiciels du monde :o

n°994944
cerel
Posté le 27-02-2005 à 19:18:42  profilanswer
 

Mais le resultat est encore un document XML ou pas ?
Car dans les exemples que j'ai cite le resultat n'a rien a voir avec du html.
 
Avec un parseur XML, peut-etre que l'on peut obtenir le meme resultat en passant par un feuille XSL non ?

n°994946
FlorentG
Posté le 27-02-2005 à 19:19:44  profilanswer
 

Avec l'XML on peut tout faire :D Donc on peut générer autre chose que de l'XML :)

n°995011
cerel
Posté le 27-02-2005 à 20:10:29  profilanswer
 

Alors ca va. :)
 
/me devrait se renseigner avant de racconter des betises :D

n°995484
rompi
Posté le 28-02-2005 à 10:16:44  profilanswer
 

FlorentG a écrit :

Tu veux un framework pour PHP ?


Oui
 

cerel a écrit :

Qu'est-ce que tu attends d'un framework precisement ?


 
Par définition un framework impose un "style" de programmation.
Donc ce que j'attend de lui c'est un petit peu comme le modèle de template mais sûrement en encore plus évolué...
Par exemple, avec strut d'apache, pour faire un  

Code :
  1. <input type="text" name="toto" value="<?php echo toto; ?>" />


(je ne sais pas pour un template)
tu écris

Code :
  1. <html:text property="toto" />


Il faut écrire un bean (une classe..) pour chaque formulaire (à peu près, on peu utilisé un bean pour plusieurs, ou même écrire ses objets en XML), et une servlet (Une classe pour le post du formulaire)...
on configure le tout dans un fichier xml à part...
 
C'est un peu plus complet que ca mais pour simplifier ca y ressemble...
C'est un truc de ce genre que j'attend...
 

FlorentG a écrit :

Avec l'XML on peut tout faire :D Donc on peut générer autre chose que de l'XML :)


 
Non avec XML on ne fait que retenir de l'information,
c'est les processeurs XSL qui permette, à partir d'un document XML, de générer: du XML, de l'HTML (4 de croix) ou du texte ( donc pas mal de chose )
Et les processeurs XSL-FO qui permette de générer des documents comme PDF par exemple...
 

n°995501
FlorentG
Posté le 28-02-2005 à 10:31:01  profilanswer
 

rompi a écrit :

Non avec XML on ne fait que retenir de l'information,
c'est les processeurs XSL qui permette, à partir d'un document XML, de générer: du XML, de l'HTML (4 de croix) ou du texte ( donc pas mal de chose )
Et les processeurs XSL-FO qui permette de générer des documents comme PDF par exemple...


C'est bien ce que je disais ;) J'ai juste oublié de préciser qu'il fallait passer par du XSL :)

n°995505
rompi
Posté le 28-02-2005 à 10:35:15  profilanswer
 

Oui c'était pour te taquiner! :)

mood
Publicité
Posté le   profilanswer
 


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

  echo '<html>' ou <html>

 

Sujets relatifs
ouvrir une seconde image + mailto en html, possible ? [reglé][PHP] Insérer le contenu entier d'une page HTML dans une chaine
Probleme html très facile a résoudre (mais je trouve pas snif)Lien dans une page HTML vers un bookmark dans un fichier .DOC
Code HTML rotation image[Résolu] Probleme de résolutin de code html ecrit avec du php par echo
faut-il mieux utiliser les "echo" ou l'HTML?[PHP/HTML] vaut il mieux : bcp de echo "" ou bcp de balises <?php> ?
PHP + HTML dans une commande echoinsertion balises html en PHP avec echo pb!
Plus de sujets relatifs à : echo '<html>' ou <html>


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