Aller au contenu

echo de pageshtml longues


Sujets conseillés

Posté (modifié)

Voila...

Je fais mon tableau sur une page html simple

Puis je remplace les " par des '

et je rajoute ." et " devant et derriere chaques lignes:

echo"<TABLE WIDTH=626 BORDER=0 align='left' CELLPADDING=0 CELLSPACING=0>"

."  <TR bgcolor='#FF0000'> "

."    <TD height='54' COLSPAN=7 valign='top'> <IMG SRC='images/Dates_r1_c1.gif' WIDTH=20 HEIGHT=54 ALT=''></TD>"

."    <TD width='2'> </TD>"

."  </TR>"

."  <TR> "

[...]

."    <td><img src='../Programme/images/spacer.gif' alt='' width='54' height='1'></td>"

."    <td></td>"

."  </tr>"

."</TABLE>";

Je n'aispas mis tout le code mais il y en as une centaine de ligne..

Le tout est copié dans un php, entouré par <?php et ?>

et mes pages me retournent souvent

de suites de " ." et mon tableau en vrac.

Y'a t'il mieux pour afficher des mises en pages HTML complexes par du php ??

Modifié par furious Gontran
Posté (modifié)
Merci bien, je teste ca...

(tiens, c'est pas dans nexen...)

<{POST_SNAPBACK}>

extrait de nexen.net :

5.2.5.1 Syntaxe

Une chaîne peut être spécifiée de trois manières différentes :

Modifié par Dash
Posté

pourquoi ne pas directement repasser "hors parseur" et y revenir quand tu aura vraiment besoin de php:

?><TABLE WIDTH=626 BORDER=0 align='left' CELLPADDING=0 CELLSPACING=0>
 <TR bgcolor='#FF0000'>
   <TD height='54' COLSPAN=7 valign='top'> <IMG SRC='images/Dates_r1_c1.gif' WIDTH=20 HEIGHT=54 ALT=''></TD>
   <TD width='2'> </TD>
 </TR>
 <TR>
[...]
   <td><img src='../Programme/images/spacer.gif' alt='' width='54' height='1'></td>
   <td></td>
 </tr>
</TABLE>
<?php
  // la suite du php

Posté

Cette question en évoque une autre que je me suis souvent posée. Vaut-il mieux faire appel au parseur x fois pour lui faire faire seulement les tâches qui sont de son ressort, ou ne l'invoquer qu'une seule fois quitte à lui faire faire en plus du php, des simples "echo" de code html?

Posté (modifié)

Merci Findel...

Forcement plus c'est simple moins on y pense...

Je crois que je me suis perdu sur le long et aride chemin du php.

(Mode "Kung Fu" ON) :lol:

_AT_Dash

Ah ouais forcement, moi je cherchais une propriete de echo ou un truc dans l'genre. :whistling:

Modifié par furious Gontran
Posté

_AT_Jan > Je ne sais pas exactement en terme de perf, mais je me doute que de ne pas passer par le parseur doit forcément accelerer et si je me souvien bien , switcher parseur/hors parseur ne ralentit pas beaucoup

Par contre, à relire, c'est toujours désagréable les switch à répétition; Pour ma part, j'ai fait le choix suivant :

petit bout de html à écrire => echo

long bout de html à écrire (plusieurs lignes) => passer hors parseur

Quand à l'écho en lui même, préférez l'utilisation des virgules plutot que les points pour l'écriture du contenu :

http://findel.free.fr/index.php?2004/10/04...s-de-caracteres

Posté

Findel : T'as été pris de cours ? Il n'y a pas encore d'articles ;)

Jan : Perso, j'utilise la méthode suivante :

très long html, hors parser, sinon en écho.

Je me rend compte que je suis constamment obligé de remettre en forme des morceaux de html, qui auraient du être directement en echo, ce qui fait que je passe peut etre un peu plus de temps à mettre en forme pour le php, mais après c'est beaucoup plus rapide.

Pour ce qui est de la rapidité, générer du 'hors parser' oblige le programme à renvoyer une partie du code au navigateur, alors qu'il aurait peut etre préféré attendre un peu. Lui commander ses sorties, c'est se priver de la gestion des sorties de php.

De plus, en cas de problème, s'il n'y a rien entre 2 balises ?> et <? il ne risque pas d'y avoir de sorties html.

En bref, j'ai souvent affaire à du code qui commence comme ceci

il y a 
<?
echo $lignes;
?> lignes dans le tableau

qui se poursuit comme ceci :

il y a <?=$lignes?> lignes dans le tableau

et qui finit (excedé) comme ceci :

<?
echo "il y a ".$lignes." lignes dans le tableau";
?>

Ce qui fait que je passe en général assez rapidement à la troisième.

D'ailleurs, après la correction, on s'apercoit que s'il n'y a qu'une ligne, alors "lignes" doit être au singulier. Avec la première et la seconde méthode, c'est pénible à modifier, avec la troisième, c'est.. gateau.

<?
echo "il y a ".(($lignes>1)?$lignes." lignes":$lignes."ligne")." dans le tableau";
?>

Anonymus.

Posté
<?php
echo "il y a ". $lignes . " ligne" . ($lignes>1) ? "s": "" . " dans le tableau";
?>

C'est pas mieux ainsi ? ;)

Posté

Dan,

Joli ;)

furious Gontran,

Tu peux très bien faire:

<?php
if (condition) {
?>
condition vraie
<?php
}
else {
?>
condition fausse
<?php
}
?>

Posté

Pour répondre à ces questions un bon bouquin : "PHPAvancé" dans la collection pc poche de Micro application.

mon conseil : utilisez une fonction pour compter le temps d'affichege de vos pages, afin de voir quelle méthode est la plus rapide.

Apparement, la concaténation par virgule de chaines en simples quote ' serait pas mal, mais avec l'envoi du buffer en une seule fois à la fin du traitement avec ob_flush...

Enfin avant d'en arriver là, commencons par optimiser les requetes sql, et tout un tas de ptits détails simples à simplifier !

Posté

Pour le décompte du temps :

<?php
function getmicrotime(){
   list($usec, $sec) = explode(" ",microtime());
   return ((float)$usec + (float)$sec);
   }

$time_start = getmicrotime();
   
//PAGE
$time_end = getmicrotime();

$time = $time_end - $time_start;
echo $time;
?>

Trivial, mais sortie tout droit du manuel ;)

Anonymus.

Posté (modifié)

BOUHEUH :(

Pourquoi quandc'est moi qui essaye ca merdouille tout le temps ???

Je place ceci avant mon tableau:

<?php

if isset($_GET['Article'])

{

$Article= $_GET['Article'];

}else{

$Article= "articledefaut";

}

echo $Article;

?>

Dans une des cases de mon tableau se trouve ceci:

<?php

echo "<iframe src='articles/zoom/".$Article.".htm' name='cadrarticle' width='510' height='430' align='left' vlign='top'"

."scrolling='yes' marginheight='0' marginwidth='0' frameborder='0'></iframe>";

?>

et dans une autre ceci:

<?php

echo "test";

?>

Et pourtant, meme mon dernier test tout bete ne fonctionne pas.

Je teste mes pages avec Dream, wamp est lancé au cas ou.

Ma page et bien enregistré en .php...

Tout bien, quoi !

Ca viens d'où?

Modifié par furious Gontran
Posté (modifié)

Personne ne sais ou n'as de piste ???

J'ais verifié l'HTML, le PHP...

Pas d'erreurset pourtant je me retrouve bloqué par un truc de base alors que tout est bon...

Les dieux de l'info sont ils contre moi ?

Meme si je fais :

<html>

<head>

<title>Untitled Document</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

<body>

hjsdklhjsdfkljklqsdf<br>

<?php

echo"php<br>";

?>

grgerghaerge

</body>

</html>

Juste pour tester, j'obtiens:

hjsdklhjsdfkljklqsdf

"; ?> grgerghaerge

Le probleme viens t'il de mon ordi ??

Modifié par furious Gontran
Posté
<html>

<head>

<title>Untitled Document</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

<body>

hjsdklhjsdfkljklqsdf<br>

<?php

echo"php<br>";

?>

grgerghaerge

</body>

</html>

Voila...

Une idée ?

Posté

Lorsque je parlais des dieux de l'info contre moi je n'avais pas totalement tort, en fait...

Il m'as suffit de reinstaller dream pourque ca remarche...

Et pour une fois c'est cool c'est pas mon faible niveau de prog qui est en cause....

LOL !!!

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...