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
 
U
u94082
Guest
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>';
}
 
U
u94082
Guest
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
 
U
u94082
Guest
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>';
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut