Code php dans un echo
brasiil59
Messages postés
9
Date d'inscription
Statut
Membre
Dernière intervention
-
mpmp93 Messages postés 6648 Date d'inscription Statut Membre Dernière intervention -
mpmp93 Messages postés 6648 Date d'inscription Statut Membre Dernière intervention -
Bonjour, je suis un débutant en PHP. Mon problème est le suivant, je voudrais mettre du code php dans un echo. Mon code :
<?php
if($data['temperature'] < 10) {
echo ' <div id="B1" style = "background : " > </div>';
} elseif($data['temperature'] > 20) {
echo '<div id="B1" style = "background : #99FFFF" > </div>';
} elseif($data['temperature'] > 50) {
echo ' <div id="B1" style = "background : " > </div>';
}
?>
je voudrais afficher les données de température dans la div mais je ne sais pas comment m'y prendre.
Merci d'avance.
<?php
if($data['temperature'] < 10) {
echo ' <div id="B1" style = "background : " > </div>';
} elseif($data['temperature'] > 20) {
echo '<div id="B1" style = "background : #99FFFF" > </div>';
} elseif($data['temperature'] > 50) {
echo ' <div id="B1" style = "background : " > </div>';
}
?>
je voudrais afficher les données de température dans la div mais je ne sais pas comment m'y prendre.
Merci d'avance.
A voir également:
- Code php dans un echo
- Code ascii - Guide
- Comment déverrouiller un téléphone quand on a oublié le code - Guide
- Code puk bloqué - Guide
- Code activation windows 10 - Guide
- Code blocks - Télécharger - Langages
2 réponses
Bonjour,
Code revu et corrigé:
<?php
$style=null;
if($data['temperature'] > 20) {
$style= "style = 'background : #99FFFF;'";
} elseif($data['temperature'] > 50) {
$style= null;
}
?>
et plus loin... dans le code HTML:
<div id="B1" <?php echo $style; ?>><?php echo $data['temperature']; ?></div>
Il faut éviter:
- que le HTML -> passe la main à PHP -> lequel PHP contienne du HTML
Il est souhaitable:
- passer de HTML à PHP
- revenir à HTML et y insérer du code PHP
PHP à l'origine (dixit son créateur: Rasmus Lerdorf) est un langage de "template":
https://fr.wikipedia.org/wiki/Php
dans mon code corrigé, ici:
<div id="B1" <?php echo $style; ?>><?php echo $data['temperature']; ?></div>
C'est sans doute plus verbeux que ceci:
echo '<div id="B1" style = "background : #99FFFF" > </div>';
mais si vous utilisez un IDE comme Netbeans ou Eclipse, vous verrez que ces IDEs gèrent nettement mieux la structuration HTML avec la première solution. Netbeans intègre un analyseur DOM et signale les erreurs de structuration de code HTML. En faisant ceci:
echo '<div id="B1" style = "background : #99FFFF" > </div>';
vous cassez la structuration DOM du code HTML.
Un exemple d'horreur que je vois parfois:
<tr>
<?php
if ($condition) {
?>
<td>valeur</td>
<?php
}
?>
</tr>
Là on passe de HTML qui contient du PHP qui imbrique du HTML!!!!
La bonne manière:
<tr>
<?php if ($condition): ?>
<td>valeur</td>
<?php endif; ?>
</tr>
Ici on est en HTML, on passe la main à PHP puis on revient en HTML....
Avec Netbeans ou Eclipse, dans le second cas, l'analyseur DOM verra bien le TD../TD, pas dans le premier cas.
JE sens d'ici les critiques.... On s'en fout d'écrire comme ça. la première manière fonctionne très bien.... OK; C'est un choix. Mais ceci:
echo ' <div id="B1" style = "background : " > </div>';
une déclaration de style sans la couleur, c'est une erreur pour le navigateur web.
A peluche
Code revu et corrigé:
<?php
$style=null;
if($data['temperature'] > 20) {
$style= "style = 'background : #99FFFF;'";
} elseif($data['temperature'] > 50) {
$style= null;
}
?>
et plus loin... dans le code HTML:
<div id="B1" <?php echo $style; ?>><?php echo $data['temperature']; ?></div>
Il faut éviter:
- que le HTML -> passe la main à PHP -> lequel PHP contienne du HTML
Il est souhaitable:
- passer de HTML à PHP
- revenir à HTML et y insérer du code PHP
PHP à l'origine (dixit son créateur: Rasmus Lerdorf) est un langage de "template":
https://fr.wikipedia.org/wiki/Php
dans mon code corrigé, ici:
<div id="B1" <?php echo $style; ?>><?php echo $data['temperature']; ?></div>
C'est sans doute plus verbeux que ceci:
echo '<div id="B1" style = "background : #99FFFF" > </div>';
mais si vous utilisez un IDE comme Netbeans ou Eclipse, vous verrez que ces IDEs gèrent nettement mieux la structuration HTML avec la première solution. Netbeans intègre un analyseur DOM et signale les erreurs de structuration de code HTML. En faisant ceci:
echo '<div id="B1" style = "background : #99FFFF" > </div>';
vous cassez la structuration DOM du code HTML.
Un exemple d'horreur que je vois parfois:
<tr>
<?php
if ($condition) {
?>
<td>valeur</td>
<?php
}
?>
</tr>
Là on passe de HTML qui contient du PHP qui imbrique du HTML!!!!
La bonne manière:
<tr>
<?php if ($condition): ?>
<td>valeur</td>
<?php endif; ?>
</tr>
Ici on est en HTML, on passe la main à PHP puis on revient en HTML....
Avec Netbeans ou Eclipse, dans le second cas, l'analyseur DOM verra bien le TD../TD, pas dans le premier cas.
JE sens d'ici les critiques.... On s'en fout d'écrire comme ça. la première manière fonctionne très bien.... OK; C'est un choix. Mais ceci:
echo ' <div id="B1" style = "background : " > </div>';
une déclaration de style sans la couleur, c'est une erreur pour le navigateur web.
A peluche
+1 avec the_animal.
Je te conseille de lire excellent tuto sur le site du zero (il est même disponible en livre) : https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql