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

Résolu
jojorealisateur Messages postés 203 Date d'inscription   Statut Membre Dernière intervention   -  
jojorealisateur Messages postés 203 Date d'inscription   Statut Membre Dernière intervention   -
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 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 753
 
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   Statut Membre Dernière intervention   18
 
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   Statut Membre Dernière intervention   18
 
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