Afficher une image correspondante [Résolu]

Signaler
Messages postés
26
Date d'inscription
lundi 25 avril 2005
Statut
Membre
Dernière intervention
5 janvier 2008
-
Messages postés
149
Date d'inscription
lundi 7 février 2005
Statut
Membre
Dernière intervention
6 février 2009
-
Bonjour à tous,

Voilà bientôt 2 jours que je me casse la tête sur ce problème : Comment afficher une image au passage de la souris dans un tableau. J'ai donc un tableau contenant des différents biens, et j'aimerais que lorsque l'utilisateur passe la souris au dessus d'un bien, sa photo s'affiche à côté du tableau. Voici le code du tableau :

while ($ligne = mysql_fetch_array($resultat))
{
echo '<TR onMouseOver=alert('.$ligne["photo"].') bgcolor="'.$couleur.'">
<TD>'.$ligne["numero_bien"].'</TD>
<TD>'.$ligne["adresse_bien"].'</TD>
<TD>'.$ligne["nom_ville"].'</TD>
<TD>'.$ligne["info_bien"].'</TD>
<TD>'.$ligne["surface"].'</TD>
<TD>'.$ligne["nombre_piece"].'</TD>
<TD>'.$ligne["photo"].'</TD>
</TR>';
}

Mais voici le problème : Si ma variable '$ligne["photo"]' contient des espaces ou des \ la fonction 'alert()' dans le 'onMouseOver=' ne fonctionne pas ! Par contre la valeur de '$ligne["photo"]' s'affiche très bien dans le tableau.
Mon but est de récupérer la valeur de '$ligne["photo"]' afin de le transférer dans une fonction du style :

function changeImage(photo){
document.photoDemo.src=photo;
}

Bien entendu, ceci ne fonctionne pas puisque je n'arrive pas à récupérer la valeur de photo si elle contient des espaces.
J'espère vraiment que vous pourrez m'aidez car je ne sais plus quoi essayer !
Merci d'avance pour vos réponses que j'attends avec impatiences.

8 réponses

Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
Je ne corrige que ça...mais le reste n'est vraiment pas joli non plus :

onmouseover="alert(\''.$ligne["photo"].'\')"
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
Hello,

les attributs html se délimitent par des guillemets...
Et un alert () javascript prend comme argument une chaîne...
Messages postés
26
Date d'inscription
lundi 25 avril 2005
Statut
Membre
Dernière intervention
5 janvier 2008

Se qui signifie ?
Messages postés
26
Date d'inscription
lundi 25 avril 2005
Statut
Membre
Dernière intervention
5 janvier 2008

Merci pour ton aide, cela m'affiche effectivement la valeur de "photo".
Mais maintenant j'ai un autre problème : la valeur de photo contenait un chemin du type "C:\documents\test\image.jpg" et là il m'affiche "C:documentstestimage.jpg".
Et désolé, je sais que c'est pas joli, mais je débute, alors je fais comme je peux ! Si j'arrive à faire pour que ça fonctionne c'est déjà un bon point non ?
Merci encore et si tu as une idée pour mon petit problème, n'hésite pas (lol).
@+
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
Si tu ne fais pas un stripslashes, une possibilité est que tu aies les magic_quotes à On dans ton php.ini, je suppose (jamais été confronté à ce problème).
Messages postés
149
Date d'inscription
lundi 7 février 2005
Statut
Membre
Dernière intervention
6 février 2009

salut,
cette histoire de slash m'était arrivée.
je crois que tu peux simplement remplacer tes \ par des / et ca va marcher, test ça.
bonne chance :)
Messages postés
26
Date d'inscription
lundi 25 avril 2005
Statut
Membre
Dernière intervention
5 janvier 2008

Merci krolenain, mais j'ai trouvé la solution :
j'ai fais un 'str_replace("\","\\\",$$ligne["photo"])' et ça a fonctionné.
Messages postés
149
Date d'inscription
lundi 7 février 2005
Statut
Membre
Dernière intervention
6 février 2009

c cool!
j'utiliserais ca aussi la prochaine fois!