Полезная информация

Будьте в курсе последних изменений в мире Mozilla, следя за нашим микроблогом в Twitter.

№101-08-2007 16:41:05

zlatko
Участник
 
Группа: Members
Откуда: Львов
Зарегистрирован: 25-09-2006
Сообщений: 15
UA: Opera 9.1

XmlHttpRequest + POST + windows-1251

Использую HttpRequest для асинхронного запроса методом POST к серверу.

Часть джаваскрипта :

Выделить код

Код:

var req =  new XMLHttpRequest();
reg.onreadystatechange = someMethod;
reg.open("POST","/cgi-bin/some_script.php", true);
reg.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
reg.setRequestHeader("Accept-Charset", "windows-1251");
reg.send("x=деякий текст");

Cерверный скрипт :

Выделить код

Код:

<?php
   error_reporting(~E_ALL);
   
   header("Content-type: application/x-www-form-urlencoded");
   header("Accept-Charset: windows-1251");
   
   $sql = $_POST["x"];
   
   $fp = fopen("1","w");
   fwrite($fp,$x);
   fclose($fp);
   
   echo $x;
?>

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

п.с. если использую GET запрос, все отлично работает...

Отредактировано zlatko (01-08-2007 16:42:32)

Отсутствует

 

№201-08-2007 17:15:45

Dark-Demon
Участник
 
Группа: Members
Зарегистрирован: 20-02-2006
Сообщений: 1278
UA: Granparadiso 3.0

Re: XmlHttpRequest + POST + windows-1251

Но в файл она пишется в непонятной мне кодировке.

utf-8

Выделить код

Код:

header("Content-type: application/x-www-form-urlencoded");
   header("Accept-Charset: windows-1251");

ужос... удаляй нафиг.

Отредактировано Dark-Demon (01-08-2007 17:17:16)


!

Отсутствует

 

№301-08-2007 17:35:05

zlatko
Участник
 
Группа: Members
Откуда: Львов
Зарегистрирован: 25-09-2006
Сообщений: 15
UA: Opera 9.1

Re: XmlHttpRequest + POST + windows-1251

Удалил, теперь и алерт выводит utf-8.

Отсутствует

 

№401-08-2007 18:36:02

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
UA: Firefox 2.0
Веб-сайт

Re: XmlHttpRequest + POST + windows-1251

Удалил, теперь и алерт выводит utf-8.

Может быть, кодировка страницы не совпадает с объявленной, или объявление отсутствует и кодировка страницы не совпадает с дефолтной кодировкой браузера ?


Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

№501-08-2007 18:47:00

zlatko
Участник
 
Группа: Members
Откуда: Львов
Зарегистрирован: 25-09-2006
Сообщений: 15
UA: Opera 9.1

Re: XmlHttpRequest + POST + windows-1251

Хм.....на главной странице :

Выделить код

Код:

<head>
  <meta http-equiv="Content-Type" content="text/html;charset=windows-1251"/>
</head>

Отсутствует

 

№601-08-2007 21:19:30

Shutnik
Участник
 
Группа: Extensions
Зарегистрирован: 12-11-2005
Сообщений: 3785

Re: XmlHttpRequest + POST + windows-1251

сталкивался с аналогичный проблемой...
по умолчанию данные из запросов всегда приходят в utf-8.
можно как-то сконфигурировать сервер на другую кодировку, но как, выяснить я так и не смог.
использую конструкцию типа

Выделить код

Код:

$string=iconv('utf-8','windows-1251',$string)

для преобразования ;)

Отсутствует

 

№702-08-2007 11:46:10

zlatko
Участник
 
Группа: Members
Откуда: Львов
Зарегистрирован: 25-09-2006
Сообщений: 15
UA: Opera 9.1

Re: XmlHttpRequest + POST + windows-1251

Да iconv конечно же помог....Так и оставлю, но если будут идеи откуда растут ноги ущемления windows - 1251 делитесь ;)

Отсутствует

 

№802-08-2007 21:53:38

Unghost
Призрак-админ
 
Группа: Administrators
Откуда: Moscow, Russia
Зарегистрирован: 08-10-2004
Сообщений: 11771
UA: Minefield 3.0

Re: XmlHttpRequest + POST + windows-1251

Возможно https://bugzilla.mozilla.org/show_bug.cgi?id=382947#c12 что-то подскажет.


Do not meddle in the affairs of Wizards, for they are subtle and quick to anger.

Отсутствует

 

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]