8722 sujets

Développement web côté serveur, CMS

Bonjour,

En cliquant sur le lien suivant, on déclenche une requête afin d' afficher les détails contenus dans la BD.
echo '<a href="index.php?lang='.$_SESSION['lang'].'&page='.$_GET['page'].'&commerce=$nom_commerce.'">


Ca marche avec Chrome, Opera and Firefox, que ce soit avec Wamp ou Serveur distant. Dans mon code sont en place:

header('Content-type: text/html; charset=utf-8'); // => sur index.php

mysqli_set_charset ( $link , 'utf8' ); // => avant requête

<meta http-equiv="content-type" content="text/html; charset=utf-8" /> // => <head>

Tous les navigateurs sont bien réglés sur UNICODE.

La requête avorte sur IE11 à cause du caractère accentué:
$_GET['commerce'] = 'Estética y salud'


Pour voir, j'ai mis un echo sur
$_GET['commerce'] 

ça donne :
'Est&#65533;tica y salud'


Le plus surprenant c'est que le même code testé sur mon laptop fonctionne avec IE11 !! ( que ce soit sur wamp ou en ligne )
Auriez-vous une idée sur cette bizarrerie ?
Comment faire pour que cela n'arrive plus sur aucun browser ?

Merci

Edit : c'est un losange avec un point d'interrogation et pas &#65533;
Modifié par Tropiques (09 Jun 2014 - 19:26)
Est-ce que ça ne serait pas la conséquence de l'option suivante :
Outils > Options Internet > Avancé > International > Envoyer des URL UTF-8 ?
Bonjour Quentin,

L'option dont tu parles était bien cochée, mais après l'avoir désactivée cela ne change rien.

Entretemps j'ai appliqué
urlencode()
sur un des liens et ça marche, sans
urldecode()
.

Je ne suis malgré tout pas très rassuré quant au comportement futur