Страница 1 из 2
Русский текст через POST отображается кракозябрами (HELP)
Добавлено: 03 мар 2012, 23:05
wierusna
Если ввести русский текст сюда
http://torrentphp.16mb.com/test.html
Код этого файла
test.html
Код: Выделить всё
<html><body><form action="forie.php" method="post" target="_blank" > Введите текст: <input type="text" value="РУССКИЙ ТЕКСТ" name="text"> <input type="submit" value="Отправить"> </form> </body></html>
затем он передается через пост в файл
forie.php
Код: Выделить всё
<?php // Create a 100*30 image$im = imagecreate(100, 30);$textimg1 = $_POST['text'];// White background and blue text$bg = imagecolorallocate($im, 255, 255, 255);$textcolor = imagecolorallocate($im, 0, 0, 255); // Write the string at the top leftimagestring($im, 5, 0, 0, $textimg1, $textcolor); // Output the imageheader('Content-type: image/png'); imagepng($im);imagedestroy($im);?>
Как это исправить?
Re: Русский текст через POST отображается кракозябрами (HELP)
Добавлено: 04 мар 2012, 16:03
Александр
wierusna
Во всех файлах используй одинаковую кодировку. Проверь что сервер отдает страницы в этой же кодировке.
Re: Русский текст через POST отображается кракозябрами (HELP)
Добавлено: 04 мар 2012, 16:50
wierusna
Александр писал(а):wierusna
Во всех файлах используй одинаковую кодировку. Проверь что сервер отдает страницы в этой же кодировке.
Когда я редактирую файлы на серверы в их редакторе (нажимаю рядом значок редактирования), то русский текст после сохранения преобразуется в символы, которые потом в браузере снова становятся текстом.
Пример файла до сохранения на сервер primer_flaaps.html
Тот же самый файл но уже после сохранения
С помощью чарльза смотрел как он посылает текст ...
Посылает его как РУССКИЙ ТЕКСТ
Что делать? как задать кодировку файлам?
Re: Русский текст через POST отображается кракозябрами (HELP)
Добавлено: 04 мар 2012, 17:32
Alazaur
В редакторе когда файлы создаете, смотрите в какой кодировке он их сохраняет. UTF-8 или Windows-1251 вам нужны. И главное следите за тем, чтобы все файлы, база(если используется), сопоставление были в одной кодировке.
И в файл test.html не плохо бы добавить
Код: Выделить всё
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
или
Код: Выделить всё
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1251">
Если у вас Flash использоваться не будет юзайте Windows-1251 с ней заморочек меньше, да и сам вконтакт в ней работает.
Re: Русский текст через POST отображается кракозябрами (HELP)
Добавлено: 04 мар 2012, 17:42
wierusna
Alazaur писал(а):В редакторе когда файлы создаете, смотрите в какой кодировке он их сохраняет.
У них редактор на сервере есть
http://file-manager.hostinger.ru ...я их там все редактирую.
Пишет вот что
Status: Saved on 2012-03-04 13:47:50 using mode FTP_ASCII
Re: Русский текст через POST отображается кракозябрами (HELP)
Добавлено: 04 мар 2012, 19:32
ukhov
wierusna писал(а):Alazaur писал(а):В редакторе когда файлы создаете, смотрите в какой кодировке он их сохраняет.
У них редактор на сервере есть
http://file-manager.hostinger.ru ...я их там все редактирую.
Пишет вот что
Status: Saved on 2012-03-04 13:47:50 using mode FTP_ASCII
В редакторе у них тоже должен быть выбор.
Re: Русский текст через POST отображается кракозябрами (HELP)
Добавлено: 04 мар 2012, 19:44
wierusna
ukhov писал(а):wierusna писал(а):Alazaur писал(а):В редакторе когда файлы создаете, смотрите в какой кодировке он их сохраняет.
У них редактор на сервере есть
http://file-manager.hostinger.ru ...я их там все редактирую.
Пишет вот что
Status: Saved on 2012-03-04 13:47:50 using mode FTP_ASCII
В редакторе у них тоже должен быть выбор.
Вот скрин редактора
http://i027.radikal.ru/1203/07/9ab49185fb93.png
Re: Русский текст через POST отображается кракозябрами (HELP)
Добавлено: 04 мар 2012, 20:18
Alazaur
Re: Русский текст через POST отображается кракозябрами (HELP)
Добавлено: 04 мар 2012, 20:38
alexei
Я за свою жизнь видел многие ужасные вещи, но такого я еще не видел.
Re: Русский текст через POST отображается кракозябрами (HELP)
Добавлено: 04 мар 2012, 23:18
wierusna
имеется, тот редактор что на скрине это их "редактор" (серверный)
как бы я не сохранял в нотпэде файл...в итоге иероглифы (текст переведенный в ASCII их редактором)
и еще кое что...как в пхп засунуть кодировку Windows-1251 ?
пробовал так
Код: Выделить всё
<?php header('Content-Type: text/html; charset=windows-1251'); // Create a 100*30 image$im = imagecreate(100, 30);$textimg1 = $_POST['text'];// White background and blue text$bg = imagecolorallocate($im, 255, 255, 255);$textcolor = imagecolorallocate($im, 0, 0, 255); // Write the string at the top leftimagestring($im, 5, 0, 0, $textimg1, $textcolor); // Output the imageheader('Content-type: image/png'); imagepng($im);imagedestroy($im);?>
результат = каракули
вот ссылка
http://torrentphp.16mb.com/test.html
там два раза контент тип прописан
header('Content-type: image/png');
header('Content-Type: text/html; charset=windows-1251');