Page 1 sur 1

Application d'une class en fonction d'un résultat

Posté : 23 sept. 2013, 21:13
par pasb71
Bonsoir à tous,

Je suis nouveau sur le forum. Je viens de suisse et technicien IT

Je gère un site internet pour un club je me trouve devant un problème et je ne trouve pas la solution

Dans le code de ma page j'affiche des résultats d'une table MySQL.

J'aimerais appliquer une class en fonction du résultat qui s'affiche.

voici ma classe

Code : Tout sélectionner

.degrader{ background: -webkit-linear-gradient(#000000, #666666); background: -moz-linear-gradient(#000000, #666666); background: -ms-linear-gradient(#000000, #666666); background: -o-linear-gradient(#000000, #666666); background: linear-gradient(#000000, #666666); }
Exemple: Si la valeur de mon champ "equipe" = "equipe1" alors toute la ligne du tableau = ma class

Voici le code de toute ma page.

J'ai mis un commentaire à la ligne de ce que j'aimerais à ligne 54 et 55

Code : Tout sélectionner

<?php include '../connexion.php'; ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"><link rel="stylesheet" type="text/css" href="test.css"/> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>toto</title> </head> <style type="text/css"> .degrader{ background: -webkit-linear-gradient(#000000, #666666); background: -moz-linear-gradient(#000000, #666666); background: -ms-linear-gradient(#000000, #666666); background: -o-linear-gradient(#000000, #666666); background: linear-gradient(#000000, #666666); } </style> <body> <?php $select = 'SELECT * FROM mysql_classement where id_saison = '.$saison.' ORDER BY Pts DESC, M, diff DESC, buts DESC'; $result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() ); $nb_classement =0; $total = mysql_num_rows($result); $var=0; if($total) { echo '<table width="466" cellspacing="0" align="left" class="coin">'."\n"; echo '<tr bgcolor='.$bgc.' >'; echo '<td width="29" ></td>'; echo '<td width="155" align="left">Equipes groupe A</td>'; echo '<td width="28">M</td>'; echo '<td width="28" align="right">G</td>'; echo '<td width="28" align="right">P</td>'; echo '<td width="28" align="right">N</td>'; echo '<td width="40" align="right">+</td>'; echo '<td width="40" align="right">-</td>'; echo '<td width="40" align="right">+/-</td>'; echo '<td width="42" align="right">Pts</td>'; echo '</tr>'."\n"; while($row = mysql_fetch_array($result)) { $nb_classement++; // 54 J'aimerais faire le test sur le champ equipes // 55 si equipes = "equipe1" alors la class "degrader à toute la ligne" echo '<td >'.$nb_classement.'.</td>'; echo '<td align="left">'.$row['equipes'].'</td>'; echo '<td >'.$row['M'].'</td>'; echo '<td align="right">'.$row['G'].'</td>'; echo '<td align="right" >'.$row['P'].'</td>'; echo '<td align="right" >'.$row['N'].'</td>'; echo '<td align="right" >'.$row['buts'].'</td>'; echo '<td align="right" >'.$row['enc'].'</td>'; echo '<td align="right" >'.$row['diff'].'</td>'; echo '<td align="right" >'.$row['pts'].'</td>'; echo '</tr>'."\n"; } echo '</table>'."\n"; } else echo 'Pas encore de données'; mysql_free_result($result); ?> </body> </html>

J'espère que je vous avez compris ce que j'aimerais.

Merci beaucoup

Re: Application d'une class en fonction d'un résultat

Posté : 23 sept. 2013, 21:23
par juliette
Bien il suffit de stoker la classe dans une variable..
puis si elle existe on l'utilise comme classe css au sein du html si non, on initialise la variable avec une autre class

Re: Application d'une class en fonction d'un résultat

Posté : 23 sept. 2013, 21:36
par pasb71
merci pour votre réponse.

Le code m'a été donné comme ceci. Je fais juste la maintenance du site. On m'a demandé si c'etait possible de faire ceci. La personne qui a fait ce code n'est plus la..

Re: Application d'une class en fonction d'un résultat

Posté : 23 sept. 2013, 22:04
par juliette
Si tu n'essaye pas, comment va tu faire par la suite ?
EDIT: il manque une ligne dans la boucle: echo '<tr>' . "\n";

Re: Application d'une class en fonction d'un résultat

Posté : 01 oct. 2013, 15:32
par pasb71
Bonjour,

voila j'ai trouvé la solution

if($total) {
	
    echo '<table width="466" cellspacing="0" align="left" class="coin">'."\n";
        echo '<tr bgcolor='.$bgc.' >';
        echo '<td width="29" ></td>';
        echo '<td width="155" align="left">Equipes groupe A</td>';
        echo '<td width="28">M</td>';
		echo '<td width="28" align="right">G</td>';
		echo '<td width="28" align="right">P</td>';
		echo '<td width="28" align="right">N</td>';
		echo '<td width="40" align="right">+</td>';
		echo '<td width="40" align="right">-</td>';
		echo '<td width="40" align="right">+/-</td>';
		echo '<td width="42" align="right">Pts</td>';
        echo '</tr>'."\n";
		
    while($row = mysql_fetch_array($result)) {
	$nb_classement++;

if ($row['equipes']=='HC Lusitanos') 
{ 
echo '<tr class="degrader">';

}else

if ($var==0) 
{ 
echo '<tr bgcolor="#333333">';
$var=1; 
}else{ 
echo '<tr bgcolor="#666666">';
$var=0; 


}

// J'aimerais faire le test sur le champ equipes
// si equipes = "equipe1" alors la class "degrader à toute la ligne"
			echo '<td>'.$nb_classement.'.</td>';
			echo '<td align="left">'.$row['equipes'].'</td>';
			echo '<td>'.$row['M'].'</td>';
			echo '<td align="right">'.$row['G'].'</td>';
			echo '<td align="right">'.$row['P'].'</td>';
			echo '<td align="right">'.$row['N'].'</td>';
			echo '<td align="right">'.$row['buts'].'</td>';
			echo '<td align="right">'.$row['enc'].'</td>';
			echo '<td align="right">'.$row['diff'].'</td>';
			echo '<td align="right">'.$row['pts'].'</td>';
		

	    }		
		echo '</tr>'."\n";

    echo '</table>'."\n";

}
else echo 'Pas encore de données';

Re: Application d'une class en fonction d'un résultat

Posté : 01 oct. 2013, 20:09
par moogli
Modération :
Si ta question est résolue, pense à l'indiquer pour que les futures personnes qui voudront consulter ce sujet sachent qu'il contient une solution.
Tu peux réaliser cette opération toi-même en cliquant sur le bouton vert "Mettre le sujet en tant que Résolu" situé en haut de la page à côté du titre du sujet.