Categories > TinyButStrong general (FR) >

colorer cellule tableau en fonction de parametres

The forum is closed. Please use Stack Overflow for submitting new questions. Use tags: tinybutstrong , opentbs
By: Fabien
Date: 2005-11-30
Time: 17:24

colorer cellule tableau en fonction de parametres

Je souhaiterai colorer des cellules d'un tableau en fonctionne du resultat de variables passer en paramètre.
exemple:
si val[0]>=5 et val[0]<=10  alors afficher la cellule du tableau en orange
sinon si val[0]>10 alors afficher la cellule du tableau en rouge
sinon afficher la cellule du tableau en vert

Est ce faisable?

merci
By: Skrol29
Date: 2005-11-30
Time: 17:51

Re: colorer cellule tableau en fonction de parametres

Salut,

Oui c'est possible. Tu trouveras dans la page des exemples un exemple intitulé "Fonctions évènementielles" très proche de ton problème.
By: Fabien
Date: 2005-12-01
Time: 15:37

Re: colorer cellule tableau en fonction de parametres

Le code de l'exemple fonctionne très bien mais ça ne fonctionne pas avec ce que je veux faire. Je souhaite que la variable du tableau soit affichée de façon colorée si elle dépasse un certains chiffre. Ex Si ma_var>8 alors afficher ma_var en rouge

ex code PHP
<?

include_once('tbs_fr/tbs_class.php') ;

$data_array[] = array('res_name'=>'Marie',  'res_score'=>5, 'res_date'=>'2003-01-10') ;
$data_array[] = array('res_name'=>'Eric', 'res_score'=>10, 'res_date'=>'2003-01-10') ;
$data_array[] = array('res_name'=>'Paul', 'res_score'=>6, 'res_date'=>'2003-01-10') ;

$TBS = new clsTinyButStrong ;
$TBS->LoadTemplate('t1.php') ;
$TBS->MergeBlock('b1',$data_array) ;
$TBS->Show() ;

function m_event_b1($NomBloc,&$CurrRec,&$DetailSrc,$RecNum){
  if ($RecNum==1) $CurrRec['res_name'] = $CurrRec['res_name']. ' (gagnant)' ;
  if ($CurrRec['res_score']<10) $CurrRec['res_score'] = '<font color="blue">'.$CurrRec['res_score'].'</font>' ;
  if ($CurrRec['res_score']>=10) $CurrRec['res_score'] = '<font color="red">'.$CurrRec['res_score'].'</font>' ;
 
}

?>

Ex Code HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>TinyButStrong</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="tbs_fr_exemples_0styles.css" rel="stylesheet" type="text/css">
</head>
<body>

<br>
<table border="1" align="center" cellpadding="2" cellspacing="0">
  <tr bgcolor="#CACACA">
    <td width="30"><strong>Position</strong></td>
    <td width="80"><strong>Pseudo</strong></td>
    <td><strong>Score</strong></td>   
    <td width="60"><div align="center"><strong>Date</strong></div></td>
  </tr>
  <tr bgcolor="#F0F0F0">
    <td>[b1.#]</td>
    <td>[b1.res_name;block=tr;onsection=m_event_b1]</td>
    <td>[b1.res_score]</td>
    <td><div align="center">[b1.res_date;frm='dd/mm/yy']</div></td>
  </tr>
  <tr bgcolor="#E6E6E6">
    <td>[b1.#]</td>
    <td>[b1.res_name;block=tr;onsection=m_event_b1]</td>
    <td>[b1.res_score]</td>
    <td><div align="center">[b1.res_date;frm='dd/mm/yy']</div></td>
  </tr>
</table>
</body>
</html>

By: Skrol29
Date: 2005-12-01
Time: 16:12

Re: colorer cellule tableau en fonction de parametres


Ben il ne faut pas grand chose pour adapter l'exemple à ton cas.
Ton cas est même plus simple que l'exemple.
Qu'est ce qui te pose problème ?

Par contre attention, j'ai corrigé l'exemple en ligne car "onsection" est obsolète. Il faut utiliser "ondata" à la place, qui est presque pareil...
By: Fabien
Date: 2005-12-01
Time: 16:37

Re: colorer cellule tableau en fonction de parametres

Ben ca fonctionne pas!!! Ca m'affiche le tableau  nickel, les tests fonctionne bien  mais au lieu de m'afficher le texte coloré, il m'affiche ce texte là à la place: <font color="blue">5</font>

mon tableau affiché:

Position     Pseudo     Score     Date
1     Marie     <font color="blue">5</font>     10/01/03
2     Eric     <font color="red">10</font>     10/01/03
3     Paul     <font color="blue">6</font>     10/01/03

Pourquoi ai je le code HTML qui s'affiche et qui ne s'execute pas?
Peux tu me renvoyer mon code corrigé?
By: Skrol29
Date: 2005-12-01
Time: 16:50

Re: colorer cellule tableau en fonction de parametres

Tu as oublié le paramètre "htmlconv=no" dans le champ [b1.res_score].

Cet exemple montre comment ajouter du Html "en dure" dans le template, mais il serait plus propre et plus simple d'utiliser un style Css nommé à la place de balises <font>. A ce moment, plus besoin de "htmlconv=no".
Exemple :
...
  <td>
    <span class="scoreniv[b1.res_score;ondata=m_event_b1]">
       [b1.res_score]
    </span>
   </td>
...

et m_event_b1() te retoune 1,2,3... selon les noms de styles Css associés.
By: Fabien
Date: 2005-12-02
Time: 15:20

Re: colorer cellule tableau en fonction de parametres

Cool, ca fonctionne bien. En fait l'erreur est que je mettais block=tr partout.