bonjour, j’ai un script dans une page php ou je veux transmettre une variable $var qui contiert des carractere ç ou ’ ou \ etc…
et la ca chi, ca me met un truc de fou…
ex:
$var="français"
?><script language="javascript" type="text/javascript">
<!--
window.location.replace("index.php?var=<?echo $var;?>
-->
</script><?
et voici ce que j’obtien: Français voir pire encore…
j’ai tt essayé, simple code, double cote, le \"$var\" … etc… rien ne passe, si qq’un a une idee… merci
les caracteres en barre d’adresses sont encodés sous la forme %+nombre : le quote:’ ->%27
Pour savoir quel code a quel caractere: charmap.exe
Lorsque tu clique sur un caractere, en bas s’affichele code associé:
pour @ s’affiche U+0040 donc #40 représente @
oui, mais le probleme est c’est pas moi qui ecrit a la main les mots dans ma variable, comment je peu scrutter tt les accent et les emplacé… c’est la folie…
les fonctions utf8_encode & utf8_peuvent t’aider
<html><head></head>
<body>
<?
$var="français";
echo (utf8_decode("$_GET[var]"));
?>
<script language="javascript" type="text/javascript">
function sub()
{
window.location.replace("index.php?var=<?echo utf8_encode($var);?>");
}
</script>
<input type=button onclick=javascript:sub()></input>
</body>
</html>
ba chez moi, ca marche pas, j’ai exactement ton code et j’ai tooujours le meme prob !!! :??:
Chez moi ça ne le fais pas, étrange
je sais pas si ca a un rapport mais je boss sous linux red hat 9 !!
Ton problème vient peut etre des entetes de tes fichiers:
essaie:
Content-Type: text/html; charset=iso-8859-1
ou:
Content-Type: text/html; charset=utf-8
Pour les urls, c’est rawurlencode hein 