Как правильно сохранять в БД символ евро

Эдди

Новичок
Изначально символ евро сохранялся "как есть", то есть как символ.

Недавно пришлось восстановить базу из архива. Все евро стали вопросительными знаками.
Реально озаботился проблемой, чтобы забыть ее раз и навсегда.

Пытаюсь сохранять как €, поначалу все нормально.
Только когда вывожу это нечто в поле формы (с htmlspecialchars), знак снова становится просто символом евро. И снова же сохраняется в БД как символ.

В общем, хотелось бы знать, как правильно. ПОтому что если криво сделаю, потом слишком много всего придется переделывать.

Спасибо.
 

Вурдалак

Продвинутый новичок
Надо задать ту кодировку, символы которой планируется использовать. Лучше, естественно, UTF-8, т.к. не накладывает ограничения на символы. Если тебе нужен символ евро (и кириллица?), то по-любому тебе требуется UTF-8. Никаких HTML-мнемоников.
 

Эдди

Новичок
Надо задать ту кодировку, символы которой планируется использовать. Лучше, естественно, UTF-8, т.к. не накладывает ограничения на символы. Если тебе нужен символ евро (и кириллица?), то по-любому тебе требуется UTF-8. Никаких HTML-мнемоников.
У меня таблицы все cp1251_general_ci. А почему " Никаких HTML-мнемоников"?
 

Вурдалак

Продвинутый новичок
cp1251_general_ci — это не кодировка. Советую всё же сначала прочитать http://phpfaq.ru/charset

Да и потом, на что мне твоё «у меня таблицы все cp1251_general_ci»? Я сказал, что тебе требуется UTF-8.
 

Эдди

Новичок
cp1251_general_ci — это не кодировка. Советую всё же сначала прочитать http://phpfaq.ru/charset

Да и потом, на что мне твоё «у меня таблицы все cp1251_general_ci»? Я сказал, что тебе требуется UTF-8.
ОК. Перечту, хотя и читал.
Непонятно одно. Через phpmyadmin видел вопросы вместо евро. На сайт выводились как символ евро. И прекрасно сохранялись.
ПОсле восстановления БД из архива вопросы остались и там, и там.

Ладно. Пошел пробовать.
 

Вурдалак

Продвинутый новичок
Скорее всего данные в UTF-8, а колонки отмечены как cp1251.

Читать мало, требуется вникнуть в суть.
 
Сверху