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

HTML+CSS+JavaScript

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Ajax - полный облом

Сообщения:  [1-10]    [11-20]  [21-25] 

 
 автор: Sergeich   (15.12.2009 в 01:34)   письмо автору
 
   для: Sever   (14.12.2009 в 21:54)
 

Я уже приводил некоторые ссылки с этого форума, где Вы могли найти ответы на Ваши вопросы.
В одной из этих ссылок была указана функция iconv('utf-8', 'windows-1251', $a);
где utf-8 - исходная кодировка, windows-1251 - получаемая, $a - конвертируемая строка. Но Вы же читать не хотите...

  Ответить  
 
 автор: Sever   (14.12.2009 в 21:54)   письмо автору
 
   для: Sergeich   (14.12.2009 в 19:13)
 

>>2. Как заставить ф-ю PHP5 convert_cyr_string() работать с форматом UTF-8? Конкретно, как заставить эту ф-ю преобразовать UTF-8 в w-1251? А то что-то не получается...
>
>А как вилкой суп есть не подскажете? А то что-то не получается! Почему-то суп выливается...
>http://ua2.php.net/manual/en/function.convert-cyr-string.php


Как некрасиво смотрится спесь...

Желающие читать и говорить на английском могут ехать в Англию. Граница открыта.(намёк ясен?)

И не надо строить из себя всезнающего чваниша. Любой человек несовершенное создание. И все знания мира в голову одного человека не поместятся никогда. Кто-то знает то, чего не знаю я, а я иногда знаю то, чего не знают другие. И так всегда и везде.
Если тебе задали вопрос отвечай по человечески, а не пытайся скорчить "ты не знаешь очевидного". В следующий раз очевидного можешь не знать сам. Я же не юродствую по поводу того, что здесь многие плохо представляют себе механизм AJAX. Если вы такой знающий, Sergeich, что это вы не ответил мне на 1 вопрос?
--------------------------------------------------------------------

Итак, скорее всего, с помощью convert_cyr_string() конвертировать UTF-8 ни во что не получится.
Именно поэтому возникают следующие вопросы:
1. В чём причина того, что при передаче данных нам надо пользоваться именно UTF-8?
2. Какими другими ф-циями конвертации русской кодировки надо пользоваться при работе с UTF-8?
3. При неимении ф-ций неплохо было бы указать спецификации кодировок.(сами ф-ции напишем)

Ага, по 3 пункту надыбал кое-что:
http://www.shtogrin.com/library/web/charsets/

А, вот теперь будет праздник и на нашей улице:
UTF-8
http://www.shtogrin.com/library/web/charsets/utf8/

Win-1251
http://www.shtogrin.com/library/web/charsets/windows-1251/

Пример преобразования текста из кодировки KOI-8 в Windows-1251:
http://www.pcre.ru/examples/other/text/20/

  Ответить  
 
 автор: Sergeich   (14.12.2009 в 19:13)   письмо автору
 
   для: Sever   (14.12.2009 в 18:06)
 

>2. Как заставить ф-ю PHP5 convert_cyr_string() работать с форматом UTF-8? Конкретно, как заставить эту ф-ю преобразовать UTF-8 в w-1251? А то что-то не получается...

А как вилкой суп есть не подскажете? А то что-то не получается! Почему-то суп выливается...
http://ua2.php.net/manual/en/function.convert-cyr-string.php

  Ответить  
 
 автор: ~AquaZ~   (14.12.2009 в 18:11)   письмо автору
 
   для: Владимир55   (06.11.2009 в 16:00)
 

<div id="content"></div> 
<script src="jquery.min.js"></script> 
<script> 
$.get('3.php', function(data){ 
  // в переменной data находится ответ от скрипта 
  $('#content').html(data); 
}); 
</script> 


хотябы упрости

<div id="content"></div> 
<script src="jquery.min.js"></script> 
<script> 
$('#content').load('3.php');
}); 
</script> 

  Ответить  
 
 автор: Sever   (14.12.2009 в 18:06)   письмо автору
 
   для: Владимир55   (06.11.2009 в 17:22)
 

>Мне надо, чтобы воспроизводилась кириллица, полученная средствами Аякс

Русская кодировка должна быть восьмибитной. Поэтому надо установить хедеру:
...Content-Transfer-Encoding: 8bit...


(тут можно подумать. Главное, чтобы небыл меньше, а больше быть может?)

Есть ещё один способ. Установить хедеру какой-то супер-мега интернациональный режим кодирования, который называется "quoted-printable"(он ещё используется при передаче почтовых сообщений методом mail()).
...Content-Transfer-Encoding: quoted-printable...

Например, в PHP так:
header('Content-Type: text/html; charset=Windows-1251 \n Content-Transfer-Encoding: quoted-printable\n');  

или
header('Content-Type: text/html; charset=Windows-1251 \n Content-Transfer-Encoding: 8bit\n');  


У меня оба способа работают. Только значок "+" везде трактуется как "пробел".

И ни кто не знает -
1. Как передавать текст от клиента серверу(а не обратно. Тем же методом AJAX, на низком уровне, а не с помощью библиотек, допустим, методом POST) в заданной кодировке? И если нет:
2. Как заставить ф-ю PHP5 convert_cyr_string() работать с форматом UTF-8? Конкретно, как заставить эту ф-ю преобразовать UTF-8 в w-1251? А то что-то не получается...

  Ответить  
 
 автор: sim5   (07.11.2009 в 15:38)   письмо автору
 
   для: Саня   (07.11.2009 в 15:18)
 

Да не должно быть такого, я специально проверил эту ситуацию на локальном и реальном сервере. Если есть путаница в кодировке, то квадратики в ответ, но чтобы вообще никакого ответа не приходило для IE, как говорит Владимир, такого не наблюдается.

  Ответить  
 
 автор: Саня   (07.11.2009 в 15:18)   письмо автору
 
   для: sim5   (07.11.2009 в 15:14)
 

Если скрипт не передаёт свой заголовок content-type с указанием кодировки, то отошлётся дефолтный. Видимо IE не осилил cp1251. Ему только windows-1251 подавай.

  Ответить  
 
 автор: sim5   (07.11.2009 в 15:14)   письмо автору
 
   для: Владимир55   (07.11.2009 в 11:32)
 

Вы хотите сказать, что с удалением кодировки по умолчанию, IE начинает получать ответы сервера, а с ней не получает вообще ничего?

  Ответить  
 
 автор: Trianon   (07.11.2009 в 15:06)   письмо автору
 
   для: Владимир55   (07.11.2009 в 11:32)
 

AddDefaultCharset никак не будет воздействовать на тот скрипт, который сам явно указывает кодировку контента через header('Content-Type...');
Так что можно обойтись и без удаления.

  Ответить  
 
 автор: Саня   (07.11.2009 в 12:49)   письмо автору
 
   для: Владимир55   (07.11.2009 в 11:32)
 

Да, корректно.
Можно заменить на AddDefaultCharset windows-1251. Возможно это тоже решит проблему.

  Ответить  

Сообщения:  [1-10]    [11-20]  [21-25] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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