Condition if dans while (retard d'affichage)
Posté : 14 mars 2017, 17:54
Bonjour,
Je suis bloqué sur l'affichage de couleur conditionnel d'un tableau.
J'ai une section html qui permet d'entrer des données sur une ligne, une fois les données entrée, elles sont stockées dans une base de données mysql. Une requête $_POST envoie les informations vers un fichier php qui récupère les informations et les prépare pour l'affichage. Enfin, j'ai une section mysql-php qui affiche les données dans un tableau. Jusqu'ici tout marche bien, mais j'aimerai ajouter des couleurs à chaque ligne de façon conditionnel, par exemple "si la valeur de telle entrée est égal à cela, affiche le fond en telle couleur" .
Cependant, quand je place mes conditions dans la boucle while ($donnees = $reponse->fetch()) { la ligne est stocké dans la base mysql, mais n'est pas affiché et quand j'entre une seconde ligne la précédente ligne est alors affiché.
Merci d'avance pour votre aide!
Préparation des données à l'affichage : Tableau_post.php
Je suis bloqué sur l'affichage de couleur conditionnel d'un tableau.
J'ai une section html qui permet d'entrer des données sur une ligne, une fois les données entrée, elles sont stockées dans une base de données mysql. Une requête $_POST envoie les informations vers un fichier php qui récupère les informations et les prépare pour l'affichage. Enfin, j'ai une section mysql-php qui affiche les données dans un tableau. Jusqu'ici tout marche bien, mais j'aimerai ajouter des couleurs à chaque ligne de façon conditionnel, par exemple "si la valeur de telle entrée est égal à cela, affiche le fond en telle couleur" .
Cependant, quand je place mes conditions dans la boucle while ($donnees = $reponse->fetch()) { la ligne est stocké dans la base mysql, mais n'est pas affiché et quand j'entre une seconde ligne la précédente ligne est alors affiché.
Merci d'avance pour votre aide!
Préparation des données à l'affichage : Tableau_post.php
<?php
// Connexion à la base de données
try
{
$bdd = new PDO('mysql:host=localhost;dbname=Logistique;charset=utf8', 'root', 'Intranet*33*');
}
catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
// Insertion du message à l'aide d'une requête préparée
if (!empty ($_POST['TRANSPORTEUR']))
{
$req = $bdd->prepare('INSERT INTO Commandes (DATE, TYPE, ACTIVITE, TRANSPORTEUR, OPERATION, QUANTITE,
ALLEE, HARRIVE, CARISTE, HDEPART, HFIN, VALIDATION) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)');
$req->execute(array($_POST['DATE'], $_POST['TYPE'], $_POST['ACTIVITE'], $_POST['TRANSPORTEUR'], $_POST['OPERATION']
, $_POST['QUANTITE'], $_POST['ALLEE'], $_POST['HARRIVE'], $_POST['CARISTE'], $_POST['HDEPART'], $_POST['HFIN'], $_POST['VALIDATION'] ));
}
header('Location: Tableau.php');
?>
Affichage du tableau : Tableau.php<?php
// Connexion à la base de données
try
{
$bdd = new PDO('mysql:host=localhost;dbname=Logistique;charset=utf8', 'root', 'Intranet*33*');
}
catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
$reponse = $bdd->query ('SELECT DATE, TYPE, ACTIVITE, TRANSPORTEUR, OPERATION
, QUANTITE, ALLEE, HARRIVE, CARISTE, HDEPART, HFIN, ID, VALIDATION FROM Commandes ORDER BY ID DESC LIMIT 0, 80');
$donnees = $reponse->fetch();
while ($donnees = $reponse->fetch()) {
switch ($donnees['VALIDATION']){
case 'EN COURS':
$color='#FF6347';
break;
case 'OK':
$color='#9ACD32';
break;
}
if($donnees['TYPE'] == 'CAMION') {
$color2 = '#FFA500';
}
elseif($donnees['TYPE'] != 'CAMION') {
$color2 = '#9ACD32';
}
if(!empty($donnees['HDEPART'])) {
$color2 = '#C0C0C0';
}
if(!empty($donnees['HFIN'])) {
$color2 = '#FFFAFA';
}
echo '<form action="Supprimer.php" method="POST">
<tr style="font-weight:bolder;"><td><strong>' . '<input style="background-color: '.$color2.';" id="test" class="tdrow" style="text-align:center;" type="text" name="date" value="'.htmlspecialchars($donnees['DATE']).'">'
. '</strong></td><td>' . '<input style="background-color: '.$color2.';" id="" class="tdrow" type="text" name="type" value="'.htmlspecialchars($donnees['TYPE']).'">'
. '</strong></td><td>' . '<input style="background-color: '.$color2.';" class="tdrow" type="text" name="activite" id="" value="'.htmlspecialchars($donnees['ACTIVITE']).'">'
. '</strong></td><td>' . '<input style="background-color: '.$color2.';" class="tdrow" type="text" id="transporteur" name="" value="'.htmlspecialchars($donnees['TRANSPORTEUR']).'">'
. '</strong></td><td>' . '<input style="background-color: '.$color2.';" class="tdrow" type="text" name="operation" id="" value="'.htmlspecialchars($donnees['OPERATION']).'">'
. '</strong></td><td>' . '<input style="background-color: '.$color2.';" class="tdrow" type="text" id="quantite" name="" value="'.htmlspecialchars($donnees['QUANTITE']).'">'
. '</strong></td><td>' . '<input style="background-color: '.$color2.';" class="tdrow" type="text" id="allee" name="" value="'.htmlspecialchars($donnees['ALLEE']).'">'
. '</strong></td><td>' . '<input style="background-color: '.$color2.';" class="tdrows" type="text" name="harrive" id="" value="'.htmlspecialchars($donnees['HARRIVE']).'">'
. '</strong></td><td>' . '<input style="background-color: '.$color2.';" class="tdrow" type="text" name="cariste" id="" value="'.htmlspecialchars($donnees['CARISTE']).'">'
. '</strong></td><td>' . '<input style="background-color: '.$color2.';" class="tdrows" type="text" id="hpris" name="" value="'.htmlspecialchars($donnees['HDEPART']).'">'
. '</strong></td><td>' . '<input style="background-color: '.$color2.';" class="tdrows" type="text" id="hfin" name="" value="'.htmlspecialchars($donnees['HFIN']).'">'
. '</strong></td><td>' . '<input style="background-color: '.$color.';" class="tdrow" type="text" id="validation" name="validation" value="'.htmlspecialchars($donnees['VALIDATION']).'">'
. '</strong></span></td><th>' . '<input type="hidden" id="id" name="id" value="'.$donnees['ID'].'">
<input type="submit" id="Supp" name="Supp" value="Supp" onclick="return confirm(\'Êtes-vous sûr de vouloir supprimer cette ligne ?\');">'
. '</strong></td><th>' . '<input type="hidden" id="mod" name="mod" value="'.$donnees['ID'].'">
<input type="submit" id="Modif" name="Modif" value="Modif" onclick="return confirm(\'Êtes-vous sûr de vouloir modifier cette ligne ?\');">'
. '</th></tr></form>'; }
exit;
?></table>