Я пытаюсь отправить '€' (введенный тип ввода = текст), но я получаю вместо этого "â? ¬".Можем ли мы предоставить знак евро в форме html?
У нас есть решение для этого, чтобы заставить меня получать правильные цифры '€' символ?
Я пытаюсь отправить '€' (введенный тип ввода = текст), но я получаю вместо этого "â? ¬".Можем ли мы предоставить знак евро в форме html?
У нас есть решение для этого, чтобы заставить меня получать правильные цифры '€' символ?
TRY: вставить €
внутри текстового поля и нажмите кнопку, это будет echo
символ
<form action="" method="post">
<input type="text" name="test" />
<input type="submit" value="go" name="submit"/>
</form>
PHP
<?php
if(isset($_POST['submit'])) {
echo $_POST['test'];
exit;
}
?>
Вы можете попробовать использовать имя HTML т.е. €
See это link для полного списка ASCII-кодов и HTML эквиваленты
вы получаете €, как он кодируется в UTF-8, но интерпретируют его как другую кодировку (возможно Windows-1252 или ISO-8859-1).
Судя по символам, которые вы видите (â?¬
), последовательность байтов 0xE2 0x82 0xAC
соответствует ISO-8859-1.
Посмотрите на заголовок типа контента запроса POST, как this answer outline. Он укажет, какая кодировка использовалась при отправке формы.
Edit: Если вы получаете один ?
при переходе к интерпретации данных формы, как UTF-8, вы, вероятно, интерпретировали это правильно. Причина, по которой вы не видите приятного €
, может быть связана с тем, что вы смотрите на данные с помощью терминала ISO-8859-1 вместо терминала ISO-8859-15 (у первого нет знака €).
Сейчас хорошее время, чтобы прочитать Joels The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!)
Я также попытался использовать UTF-8, но я получаю «?» вместо. –
Как вы смотрите на результат? Через веб-браузер или в окне оболочки? –
Я отлаживал код в своем файле Java, чтобы узнать, что я получу (и получил «â? ¬»). Я также сделал запрос и ответ на кодировку UTF-8. –