Remplacer des résultats MySQL dans un tableau avec "if"

Résolu/Fermé
jojorealisateur Messages postés 203 Date d'inscription jeudi 9 mars 2017 Statut Membre Dernière intervention 8 juillet 2020 - 27 mai 2020 à 17:56
jojorealisateur Messages postés 203 Date d'inscription jeudi 9 mars 2017 Statut Membre Dernière intervention 8 juillet 2020 - 27 mai 2020 à 21:53
Bonjour à tous,

Je suis actuellement en pleine galère avec un système que je tente de créer.
Pour avoir plus simple, je vous explique ce dernier.

1 - J'extrais des données de ma base de données. Ces données sont des lettres (a, r, m, p) qui correspondent à des actions très précises (Arrêter un PC, Redémarrer un PC, Mettre en veille un PC, Mettre en veille prolongée un PC).
2 - J'affiche ces données dans la cellule d'unn tableau (en html)
3 - (c'est là que ça coince) Afin de facilité la lecture du tableau, je souhaite remplacer les simples lettres par l'intitulé complet.

J'utilise le code suivant dans une balise
<td></td>
(qui ne fonctionne pas des masses)
<?php
if ($row['action'] = "a") {
        echo "Arrêt";
        } elseif ($row['action'] = "v") {
            echo "Mise en veille";
        } elseif ($row['action'] = "p") {
            echo "Mise en veille prolongée";
        } elseif ($row['action'] = "r") {
            echo "Redémarrage";
}
        ?>


En fait, quand j'utilise ce code, peu importe la lettre qui se trouve dans la base de données, j'obtiens systématiquement "Arrêt".

Que puis-je faire ?

Merci !

Jojorealisateur
A voir également:

2 réponses

jordane45 Messages postés 38358 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 28 décembre 2024 4 719
27 mai 2020 à 18:04
Bonjour,

Commence par nous faire un var_dump de ta variable $row['action'] et montres nous ce que ça t'affiche.

Ensuite, sache que la comparaison en PHP se fait avec deux ( ou trois) égales ...
if ($row['action'] == "a") {


Et sinon, plutôt que du if / elseif ... je t'invite à regarder comment fonctionne le SWITCH.

Tu peux aussi simplement utiliser un tableau associatif genre
$truc = array('a'=>"Arrêt"  , 'v'=>"Mise en veille" , 'p'=>"Mise en veille prolongée", 'r'=>"Redémarrage");

echo $truc[$row['action']];


1
jojorealisateur Messages postés 203 Date d'inscription jeudi 9 mars 2017 Statut Membre Dernière intervention 8 juillet 2020 18
27 mai 2020 à 18:45
Ok, merci beaucoup pour vos réponses.
Je vais tester tout ça au plus vite, et je vous donne les résultats.

Je suis encore fort débutant, et je tâtonne... ^^
0
jojorealisateur Messages postés 203 Date d'inscription jeudi 9 mars 2017 Statut Membre Dernière intervention 8 juillet 2020 18
27 mai 2020 à 21:53
Hum. Baaah...

Ensuite, sache que la comparaison en PHP se fait avec deux ( ou trois) égales ...

(groooossse tape sur le front, suivi de MAIS QUEL IDIOT JE SUIS !)

Eh bien eh bien... Encore une grosse bêtise de ma part, ma distraction habituelle je suppose.
Ça marche parfaitement avec deux =.

Merci (que dire d'autre ?) ! Heureusement que vous étiez là, j'aurais pu tourner en rond pendant un siècle sans vos lumières !

Bonne soirée,

Jojorealisateur
0