ça sent l'autocasting vu les valeurs que tu manipules :
tu peux essayer avec ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part $color = ((null === $prev) || ($prev == $row['Col19'])) ? '#CCCCCC' : '#669999';
ça sent l'autocasting vu les valeurs que tu manipules :
tu peux essayer avec ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part $color = ((null === $prev) || ($prev == $row['Col19'])) ? '#CCCCCC' : '#669999';
Le problème, c'est que cet algo fonctionne comme cela :
1. Col19 est différente de null -> Couleur 1
2. Si Col19[i-1] = Col19[i] -> Couleur 2
Si Col19[i-1]<>Col19[i] ->Couleur 1
Et c'est là que se situe le problème ... Cet algo fait l'inverse, il y a un truc qui m'(nous) échappe !
heu non...
le code donne par rawsrc :
concretement se lit :
Code Php : Sélectionner tout - Visualiser dans une fenêtre à part $color = ((null === $prev) || ($prev == $row['Col19'])) ? '#CCCCCC' : '#669999';
si [donnee n-1] n'est pas definie OU
si [donnee n-1] et la meme que [donnee n]
=> alors, la couleur est #CCCCCC
sinon ([donnee n-1] differente de [donnee n] )
la couleur est #669999
j'ai pas teste, mais ca m'a l'air d'etre ce que tu attendais...
sinon, rien ne t'empeche de modifier le code... changer un == en != par exemple
[edit]
ah mais non... tu dois avoir raison...
exemple : 1,2,2,3...
1 : changement de couleur car n-1 null (couleur CCCCCC)
2 : changement de couleur car n-1 != n (couleur 669999)
2 : meme couleur (couleur 669999)
3 : n-1 != n donc couleur = 669999 (couleur 669999)
La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.
Venez discuter sur le Chat de Développez !
je pense qu'il faudrait peut-etre faire avec le fameux compteur (hahaha)
genre :
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 $prev = null;$compteur=0; if($prev != $row['Col19']) { $compteur++; $prev = $row['Col19']; } $couleur= ($compeur % 2) ? "#CCCCCC" : "#669999";
La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.
Venez discuter sur le Chat de Développez !
Après dépieutage, je me suis effectivement raté dans l'affectation des couleurs. Mais étant étudiant, tu aurais pu corriger l'ancien que je suis
Donc sans compteur, ni modulo, ceci devrait faire l'affaire :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 $prev = null ; $last_color = '#CCCCCC'; while($row = mysql_fetch_array($resultliai)) { if ((null === $prev) || ($prev == $row['Col19'])) { $color = $last_color; } else { $color = ($color === '#669999') ? '#CCCCCC' : '#669999'; $last_color = $color; } $total_color = ($row['Total'] > 1000) ? '#DC143C' : $color; $prev = $row['Col19']; if ($row['Total'] > 15) { echo <<<WEB <tr> <td bgcolor="$color">{$row['Col19']}</td> <td bgcolor="$color">{$row['SiteA']}</td> <td bgcolor="$color">{$row['SiteB']}</td> <td bgcolor="$color">{$row['PCG']}</td> <td bgcolor="$color">{$row['BoucleORS']}</td> <td bgcolor="$color">{$row['Routeur_Interface']}</td> <td bgcolor="$total_color">{$row['Total']}</td> </tr> WEB; } }
La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.
Venez discuter sur le Chat de Développez !
Merci beaucoup ! Entre temps j'avais trouvé qu'il fallait initier la valeur de la couleur mais il me manquait encore un truc.
RÉSOLU
Partager