Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: iconv
 
 автор: sl1p   (11.10.2008 в 18:42)   письмо автору
 
 

Бред какойто.
Шлю аяксом текст из инпута в пхп.

затем обрабатываю "пришедший" текст:
header("Content-Type: text/html; charset=windows-1251");
$msg = iconv('utf-8', 'windows-1251', $_POST['msg']);

в результате при обработке,натыкаясь на какието символы,получаем ошибку.

Notice: iconv() [function.iconv]: Detected an illegal character in input string in хх.php on line 15

пока что заметил только несколько символов на которые ругается.
например:

alt+0152
˜ - англ раскладка
˜ - рус.

тоесть если писать в базу напрямую через пхп тогда пишется так:
˜s˜
но iconv ругается на такие символы, именно если слать уже переведённые а не их код.

  Ответить  
 
 автор: sim5   (11.10.2008 в 18:58)   письмо автору
 
   для: sl1p   (11.10.2008 в 18:42)
 

Ну а чего вы хотите, если такие символы не могут быть сохранены в кодировке 1251? Не хватает кодовой страницы для этого.

  Ответить  
 
 автор: sl1p   (11.10.2008 в 19:04)   письмо автору
 
   для: sim5   (11.10.2008 в 18:58)
 

ну я как бы не злюсь на "него":)
но просто хотелось бы узнать как тогда можно пересылать такие символы?

  Ответить  
 
 автор: sim5   (11.10.2008 в 19:14)   письмо автору
 
   для: sl1p   (11.10.2008 в 19:04)
 

А UTF-8 вам для чего предложили по вашему?

  Ответить  
 
 автор: sl1p   (11.10.2008 в 19:21)   письмо автору
 
   для: sim5   (11.10.2008 в 19:14)
 

без iconv в 1251 русский текст кракозябрами пишется..
utf-8 тут имхо не подходит.. я уже с разных сторон пробовал - никак.. только 1251 катит..(

  Ответить  
 
 автор: sim5   (11.10.2008 в 19:37)   письмо автору
 
   для: sl1p   (11.10.2008 в 19:21)
 

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

  Ответить  
 
 автор: sl1p   (11.10.2008 в 20:11)   письмо автору
 
   для: sim5   (11.10.2008 в 19:37)
 

база тут не причём.
проблема в аяксе.Он шлёт всё в ютф-8, даже если ему переписать заголовок.
вот получается так:

ыыы - до iconv

ыыы - после

  Ответить  
 
 автор: sim5   (11.10.2008 в 20:21)   письмо автору
 
   для: sl1p   (11.10.2008 в 20:11)
 

Значит не передавайте недопустимых для 1251 символов, если ваши страницы в этой кодировке. Если же это связано с тем, что на странице есть html-unicode, который будет передан вам, то детектируйте его, уж не знаю как более поступить.

  Ответить  
 
 автор: sl1p   (11.10.2008 в 22:44)   письмо автору
 
   для: sim5   (11.10.2008 в 20:21)
 

не передавать их просто невозможно:)
потому что там передаются так же строки которые писались в базу заранее и с такими вот символами.
символы допустимые, только вот аякс передаёт их в идиотском виде..

короче мб кто сталкивался с таким поможет.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования