Il y a des erreurs de conception.
1 - On ne met pas un nom dans une cléUn nom on peut l'écrire de différentes manières. Jean Dupont est différent de jean dupont ou de JEAN DUPONT ou de DUPONT JEAN et pourtant c'est toujours la même personne.
Plusieurs personnes peuvent avoir les mêmes noms et prénoms.
Normalement quand on a une table des personnes on donne un identifiant (numérique le plus souvent).
2 - On ne répète pas les informations dans une table.Tu as mis 4 tâches dans un enregistrement. Il vaudrait mieux une table avec 1 seule tâche et un n° d'ordre. Exemple : id personne, n° de tache, autres champs avec id personne et n° de tache en clé.
Si un jour tu as plus de 4 taches tu peux mettre ton appli à la poubelle. Or qui peut le plus peut le moins. Une structure correcte te permet d'avoir 1 tache, 4 taches ou 50.
3 - On ne stocke pas des valeurs en "dur" dans les données hormis dans les tables de paramétrage.Tester etat1="En cours" équivaut à sauvegarder "deux cent dix sept virgule trente deux" dans une table ou lieu de 217,32.
Que se passe t'il si dans un autre script tu utilises "En-cours" ? Ca ne marchera pas. En plus ça prend plus de place dans la BDD.
Dans un tel cas on a une table Etats avec un code et un libellé et si un jour ton appli doit être traduite tu n'as qu'à traduire le libellé et c'est bon. Exemple : 1 = En cours, 2=Terminé, etc...
La voie que tu as choisie n'est pas la bonne. Je pourrais t'aider sur ton problème comme je l'ai fait dans le passé pour d'autres mais je ne le ferai pas car ce n'est pas un service à te rendre.Avec une bonne structure, ta requête deviendrait :
1 2
|
$requete= $connect->prepare('SELECT * FROM lesTaches WHERE etat="0" '); |
J'ai l'impression que dans ta requête originale il manque le "nom" de la personne et/ou un order by.Ton php deviendrait (je simplifie puisque dans la requête il faudrait faire un JOIN sur la table des Etats pour ramener son libellé).
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
<?php
while($row = $requete->fetch())
{
?>
<tr>
<td><?php echo $row["nom"]; ?></td>
<td><?php echo $row["tache"]; ?></td>
<td><?php echo $row["t"]; ?></td>
<td><?php echo $row["date"]; ?></td>
<td><?php echo $row["fnc"]; ?></td>
<td style="font-weight: bold; color:#00008B"><?php echo $row["etat"]; ?></td>
</tr><?php etc.... |
Et plus besoin de tester si les autres taches sont != de "RAS" puisque tu n'affiches que ce qui est dans la table.
Et pour finir une question. Dans le cartouche de ton pseudo il est indiqué "Chercheur en informatique". Ca correspond à quoi ?
Partager