Вы говорите, что у вас проблемы с URL-адресами GET, такими как
emeasmartportal.com/sbso/index-test.php?fname=àéèâêîôûœïç
Похоже, проблема в самих входящих данных GET: потому что им нужно кодировать их , прежде чем они смогут узнать, какой набор символовотвечающая страница имеет , браузеры используют разные кодировки по умолчанию для этих данных.Firefox, по-видимому, использует UTF-8 по умолчанию (см., Например, этот отчет об ошибке).IE, похоже, этого не делает.
Я думаю, вам нужно использовать mb_detect_encoding()
, чтобы определить, являются ли входящие данные IS-8859-1 или UTF-8.(Этот конкретный случай может быть надежно обнаружен с помощью этой функции.)
Если входящие данные являются ISO-8859-1 (которые вы можете надежно обнаружить с помощью mb_detect_encoding), вам необходимо преобразовать их:
iconv("iso-8859-1", "utf-8", $data)
если это уже UTF-8, вы этого не сделаете.
Этот должен работать, но без гарантий.Проблемы с кодированием могут быть неприятными, если вы точно не знаете входящую кодировку.