for 'champ1' = x if 'value' = 1 {

Avatar du membre
Eléphant du PHP | 224 Messages

11 déc. 2014, 06:34

Hello :)

Désolé pour le titre mais j'ia pas trouvé quelque chose de court poru décrire ma question.

Voilà, je ramasse les valeurs d'une table mysql par la commande suivante :
    $sql = "SELECT *
FROM places";
	$sql = mysql_query( $sql ) ;		
	$park = mysql_fetch_array( $sql );	
La commande SQL dnas myphpadmin me permet d'afficher totue la table 'places'
dans laquel j'ai un id unique (place_id), un nom de place (place_name), et un status (place_status) de place (0 pour libre, 1 poour occupé).

J'ai un tableau dans lequel j'ai une case par place.
Je voudrais que la case soit blanche si la place est libre, et rouge si elle est occupée.
En gros, je voudrais par rapport à ma requète, dire que par exemple, pour la place_name = 25 , si la place_status = 1 , alors la couleur de fond est rouge.

J'ai pensé à faire ceci pour mes cases :
<td width="40" bgcolor="#
<? for (($park['place_name'] == 25) if ($park['place_status'] == '1')) {?>
FF0000
<?} else {?>
FFFFFF
<?}?>
"><div align="center">25</div></td>
Evidement, ça ne marche pas. J'ai tenté de changer les diverses distributions de parenthèses, acolades, mais les messages d'insultes s'nechaines au même rythme que mes essais.

Si quelqu'un à une idée, ca serait sympa :D

M'ciii :)
Couin
Un Couin vaut mieux que Deux tu couineras :D
Retrouvez-moi tous les dimanches soir à 22H pour un mix live au vinyle sur eurodance90.fr :mrgreen:

Nestecha
Invité n'ayant pas de compte PHPfrance

11 déc. 2014, 08:28

La fonction for est une boucle. Elle ne fonctionne pas comme tu as essayé de l'utiliser.

Pour ce que tu désires faire, je te conseille de boucler à travers ton tableau park avec un foreach, puis d'afficher ce que tu veux en fonction de la valeur de statut avec une condition (if).

foreach ($park as $aData) {
if ($aData['place_status'] == 1) {
$sColor = 'red';
} else {
$sColor = 'white';
}

echo '<td width="40" bgcolor="'.$sColor.'"><div align="center">'.$aData['place_name'].'</div></td>';

}
Fait sur téléphone donc peut être des fautes de frappe mais en gros c'est ca.

Avatar du membre
Eléphant du PHP | 224 Messages

13 déc. 2014, 00:21

Merci je vais essayer ce code là et je te redis :)
Un Couin vaut mieux que Deux tu couineras :D
Retrouvez-moi tous les dimanches soir à 22H pour un mix live au vinyle sur eurodance90.fr :mrgreen: