Problème & et & sur lien javascript

WRInaute discret
Bonsoir,

voila pour un système de vote j'utilise des liens en javascript (accessoirement dans du php)

dont voici un exemple :
Code:
onclick="rate();javascript:loadFragmentInToElement(\'monsite.com/vote.php?id=125&echelle=5.'\',\'envoi-rate\')

mon problème vient du fait que dans ma page le '&' se transforme en '&', j'ai essayé avec

Code:
echo html_entity_decode('&').'';

j'ai testé aussi avec un str_replace(htmlentities) mais rien n'y fait, la seul raison que j'y vois serait un bug de navigateur ou à la rigueur de serveur mais je n'y crois pas trop.

Quelqu'un pourrait il éclairer ma lanterne?
Merci
 
WRInaute occasionnel
T'as forcément un htmlentities() ou un htmlspecialchars() qui traine...
Et puis pour la rustine c'est
Code:
str_replace('&', '&', $mavariable)
 
WRInaute discret
et bien, ni htmlentities() ni htmlspecialchars()
mais j'avais déjà testé avec str_replace, mais peut être je m'y prends mal
étant donné qu'à cet endroit précis je n'ai pas de variable a afficher, le $mavariable je le remplace par quoi? & ?
 
WRInaute discret
Code:
if($i<=$moyenne){
	echo '<a href="#" name="echelle" value="'.$i.'"><img id="star'.$i.'" src="http://www.mon site.com/img/image2.jpg" border="0" onmouseover="Etoiles('.$i.')" onmouseout="Etoiles_out2('.$i.')" onclick="rate();javascript:loadFragmentInToElement(\'http://www.mon site.com/vote_video.php?id='.$list['id'].'';
echo html_entity_decode('&amp;').'echelle='.$i.'\',\'envoi-rate\');return 0;"></a>';
}
 
WRInaute occasionnel
Donc quand tu ecrit ça tel quel,
Code:
echo '<a href="#" name="echelle" value="'.$i.'"><img id="star'.$i.'" src="http://www.mon site.com/img/image2.jpg" border="0" onmouseover="Etoiles('.$i.')" onmouseout="Etoiles_out2('.$i.')" onclick="rate();loadFragmentInToElement(\'http://www.mon-site.com/vote_video.php?id='.$list['id'].'&echelle='.$i.'\',\'envoi-rate\');return 0;"></a>';

ça bugue ? au niveau du ?id='.$list['id'].'&echelle ? Tu vois la transformation dans la source Firefox ? Tu reçois quand même le paramètre echelle ?
 
WRInaute discret
ça bug oui, dans mon code j'écris
Code:
vote_video.php?id='.$list['id'].'&echelle=
et en regardant la source dans firefox je c'est
Code:
vote_video.php?id=22&amp;echelle=
du coup mon javascript ne fonctionne pas
 
WRInaute occasionnel
Ouè ben je vois vraiment pas d'ou un tel problème peut venir... 8O
Donc tu peux mettre en place la rustine comme ça
Code:
$lien = 'http://www.mon-site.com/vote_video.php?id='.$list['id'].'&echelle='.$i;
$lien = str_replace('&amp;', '&', $lien);
echo '<a href="#" name="echelle" value="'.$i.'"><img id="star'.$i.'" src="http://www.mon site.com/img/image2.jpg" border="0" onmouseover="Etoiles('.$i.')" onmouseout="Etoiles_out2('.$i.')" onclick="rate();loadFragmentInToElement(\''.$lien.'\',\'envoi-rate\');return 0;"></a>';
 
Discussions similaires
Haut