Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 18/11/2011, 22h54   #1
Nouveau Membre du Club
 
Homme
Inscription : décembre 2009
Messages : 144
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : décembre 2009
Messages : 144
Points : 30
Points : 30
Par défaut Changement de couleur au survole d'une ligne

Bonjour, j'ai un petit soucis avec un tableau dans lequel je souhaite modifier la couleur de chaque ligne au survole de la souris.
J'ai créer mon code cependant je dois incrementer un numéro pour chaque <tr> (1,2,3,4,etc.....)
Le probleme c'est que comme le $row se repete 3 fois sur le <tr> le MouseOverRow ne reconnais pas la ligne sur laquel il doit modifier la couleur.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
$resultat=mysql_query($sql);
$row = 0;
$i = 0;
 while($ligne=mysql_fetch_assoc($resultat)){
  $color = ++$i % 2 ? '#F7F7F7':'#FFFFFF';
echo "
<tr class='dg_tr' style='background-color: $color;'  id='row_".$row ++."'  
onmouseover=\"onMouseOverRow('','".$row ++."','#fdfde7', '#f9f9e3');\"
onmouseout=\"onMouseOutRow('','".$row ++."','$color','#fdfde7');\" >
<td>.......</td>"; 
?>
</tr>	
<?php		
}
?>
Et normalement le $row devrait rendre le code suivant:
Code :
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
 
<tr class='dg_tr' style='background-color: #F7F7F7;'  id='row_0'  
onmouseover="onMouseOverRow('','0','#fdfde7', '#f9f9e3');"
onmouseout="onMouseOutRow('','0','#F7F7F7','#fdfde7');" >
 
<td></td>
</tr>	
 
<tr class='dg_tr' style='background-color: #FFFFFF;'  id='row_1'  
onmouseover="onMouseOverRow('','1','#fdfde7', '#f9f9e3');"
onmouseout="onMouseOutRow('','1','#FFFFFF','#fdfde7');" >
<td>.....</td>
</tr>	
 
<tr class='dg_tr' style='background-color: #F7F7F7;'  id='row_2'  
onmouseover="onMouseOverRow('','2','#fdfde7', '#f9f9e3');"
onmouseout="onMouseOutRow('','2','#F7F7F7','#fdfde7');" > 
<td>.....</td>
</tr>	
 
<tr class='dg_tr' style='background-color: #FFFFFF;'  id='row_3'  
onmouseover="onMouseOverRow('','3','#fdfde7', '#f9f9e3');"
onmouseout="onMouseOutRow('','3','#FFFFFF','#fdfde7');" > 
<td>.....</td>
</tr>
Or il me rend le code suivant:
Code :
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
 
<tr class='dg_tr' style='background-color: #F7F7F7;'  id='row_0'  
onmouseover="onMouseOverRow('','1','#fdfde7', '#f9f9e3');"
onmouseout="onMouseOutRow('','2','#F7F7F7','#fdfde7');" >
 
<td>.....</td>
</tr>	
 
<tr class='dg_tr' style='background-color: #FFFFFF;'  id='row_3'  
onmouseover="onMouseOverRow('','4','#fdfde7', '#f9f9e3');"
onmouseout="onMouseOutRow('','5','#FFFFFF','#fdfde7');" >
<td>.....</td>
</tr>	
 
<tr class='dg_tr' style='background-color: #F7F7F7;'  id='row_6'  
onmouseover="onMouseOverRow('','7','#fdfde7', '#f9f9e3');"
onmouseout="onMouseOutRow('','8','#F7F7F7','#fdfde7');" > 
<td>.....</td>
</tr>	
 
<tr class='dg_tr' style='background-color: #FFFFFF;'  id='row_9'  
onmouseover="onMouseOverRow('','10','#fdfde7', '#f9f9e3');"
onmouseout="onMouseOutRow('','11','#FFFFFF','#fdfde7');" > 
<td>.....</td>
</tr>
Comment faire pour que $row s'increment de 1que lorsqu'il passe au <tr> suivant?
Budy123 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/11/2011, 23h04   #2
Rédacteur
 
Avatar de jreaux62
 
Homme Jérôme Réaux
Webdesigner
Inscription : août 2008
Messages : 2 994
Détails du profil
Informations personnelles :
Nom : Homme Jérôme Réaux
Âge : 45
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : Webdesigner
Secteur : Arts - Culture

Informations forums :
Inscription : août 2008
Messages : 2 994
Points : 5 787
Points : 5 787
Envoyer un message via Skype™ à jreaux62
Bonsoir,
as-tu entendu parlé de la propriété CSS :hover ?

Ou encore de col et colgroup : Les tableaux (XHTML & CSS)
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément."
Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique.
Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
jreaux62 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/11/2011, 23h08   #3
Nouveau Membre du Club
 
Homme
Inscription : décembre 2009
Messages : 144
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : décembre 2009
Messages : 144
Points : 30
Points : 30
Oui, mais en faite je viens de trouver la solution à mon probleme.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
$resultat=mysql_query($sql);
$row = 0;
$i = 0;
 while($ligne=mysql_fetch_assoc($resultat)){
  $color = ++$i % 2 ? '#F7F7F7':'#FFFFFF';
  $Num = ++$row;
echo "
<tr class='dg_tr' style='background-color: $color;'  id='row_$Num'  
onmouseover=\"onMouseOverRow('','$Num','#fdfde7', '#f9f9e3');\"
onmouseout=\"onMouseOutRow('','$Num','$color','#fdfde7');\" >
<td></td>"; 
?>
</tr>	
<?php		
}
?>
Merci
Budy123 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h23.


 
 
 
 
Partenaires

Hébergement Web