HTML dans du PHP, on m'aurait menti ?

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : HTML dans du PHP, on m'aurait menti ?

par naholyr » 27 juin 2005, 21:47

Il y a même une syntaxe alternative très chouette qui rend un peu plus lisible ce genre d'écriture
<ul>
<?php for($i = 0; $i < 10; $i++): ?>
  <li><?= $liste[$i] ?></li>
<?php endfor ?>
</ul>

par Cyrano » 27 juin 2005, 19:02

Petites règles de base en programmation: ne pas exiger un effort inutile à l'interpréteur PHP. Quand on peut éviter de mettre du html dans un echo() ou un print(), c'est techniquement toujours mieux. Le html est interprété coté client et n'a nullement besoin de passer dans l'interpréteur PHP.

Donc il est vivement recommandé de préférer ceci:
<ul>
<?php
for($i = 0; $i < 10; $i++)
{
?>
  <li><?php echo($liste[$i]); ?></li>
<?php
}
?>
</ul>
à ceci :
<?php
echo("<ul>\n");
for($i = 0; $i < 10; $i++)
{
  echo("<li>". $liste[$i] ."</li>\n");
}
echo("</ul>\n");
?>

par benjamin » 27 juin 2005, 17:48

sur free sa marche une foit sur 2 si il y a seulement <?

par slipndi » 27 juin 2005, 17:47

Bonjour, ben je suppose que ca dépend de ton envie, mais dison que utilisé du html à l'interieur du for sans passé par des echo je trouve ca moin lisible de mon côté, mais le html et php sont fait pour être coupler a mort donc je suppose que ca pose pas de soucis :)

par Dreck » 27 juin 2005, 17:47

il a tor mais si ton script ne mache pas asaille
Sur mon wamp5 ça marche très bien, je suppose que c'est le manque du 'php' après le <? qui fait que ça ne passe pas partout :roll:

Zeus :: ok merci pour le conseil :)

par zeus » 27 juin 2005, 17:44

D'un point de vue théorique, cette écriture fonctionne parfaitement

ensuite, pour la pratique, je vois 2 cas :
- un petit peu de code HTML : c'est pas jolie à lire
- un gros code HTML : je suis partisant de ne pas surcharger inutilement les serveurs donc d'éviter d'utiliser un echo pour écrire une phrase qui va toujours apparaitre et qui ne contient pas de variable

Dans ton exemple, je trouve que
<?php
for($a = 0;$a < 10;$a++){
  echo "test <br>";
}
?>
serait plus propre mais si tu as plus de 5 lignes, je te conseille l'autre méthode
<?php
for($a = 0;$a < 10;$a++){
?>
<table>
  <tr>
    <td>Coucou</td>
  </tr>
  <tr>
    <td>C'est bon</td>
  </tr>
</table>
<?
}
?>

par benjamin » 27 juin 2005, 17:42

il a tor mais si ton script ne mache pas asaille
<?php 
for($a = 0;$a < 10;$a++){ 
?> 
test <br> 
<?Php
} 
?> 

HTML dans du PHP, on m'aurait menti ?

par Dreck » 27 juin 2005, 17:39

Chalut

Voila, quelqu'un m'a dit que ceci n'était pas joli ::
<?php
for($a = 0;$a < 10;$a++){
?>
test <br>
<?
}
?>
D'après cette personne, vu que c'est dans une boucle, on peut pas utiliser de html de cette façon, il a raison ? :roll:

Merchi :D