URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID8
Нить номер: 2066
[ Назад ]

Исходное сообщение
"Передача данных из TEXTAREA методом POST на сервер"

Отправлено maxdm , 01-Фев-04 18:37 
Люди! Проблема!
Есть TEXTAREA. Пишу туда очень большой (по количеству букв) текст. Передаю на сервер, а там оказывается текст обрезанный какой-то, т.е. не весь. Что делать?
Метод POST.
Сервер APACHE.
Система WinXP.

Содержание

Сообщения в этом обсуждении
"Передача данных из TEXTAREA методом POST на сервер"
Отправлено Rohan , 02-Фев-04 00:44 
>Люди! Проблема!
>Есть TEXTAREA. Пишу туда очень большой (по количеству букв) текст. Передаю на
>сервер, а там оказывается текст обрезанный какой-то, т.е. не весь. Что
>делать?
>Метод POST.
>Сервер APACHE.
>Система WinXP.

Для начала - сказать target типа 127,0,0,1:85 (например), послушать этот порт (hyperterm сойдет), и выяснит - а не броузер ли в этом виноват?



"Передача данных из TEXTAREA методом POST на сервер"
Отправлено Александр , 03-Фев-04 12:56 

>Метод POST.
>Сервер APACHE.
>Система WinXP.

А броузер - не Netscape, случайно? Читал, что он может обрезать данные из textarea.


"Передача данных из TEXTAREA методом POST на сервер"
Отправлено solotony , 04-Фев-04 14:27 
А как ты их читаешь на сервере?



"Передача данных из TEXTAREA методом POST на сервер"
Отправлено maxdm , 04-Фев-04 18:52 
Примерно вот так:

sub urldecode
{
local($val)=@_;
$val=~s/\+/ /g;
$val=~s/%([0-9A-H]{2})/pack('C',hex($1))/ge;
return $val;
}

if($ENV{'REQUEST_METHOD'} eq 'GET'){$h=$ENV{'QUERY_STRING'};}
elsif($ENV{'REQUEST_METHOD'} eq 'POST'){sysread STDIN,$h,$ENV{'CONTENT_LENGTH'};}

@massiv=split(/&/,$h);

foreach(@massiv)
        {
    if (/^text=(.*)/) {$text=&urldecode($1);}
    }

Затем \n преобразуем,ну допустим в пробел

$text=~tr/\n/ /;

В общем всё стандартно. Хотя на счёт последней строки я не уверен.


"Передача данных из TEXTAREA методом POST на сервер"
Отправлено solotony , 04-Фев-04 19:01 
попробуй заменить sysread на read

"Передача данных из TEXTAREA методом POST на сервер"
Отправлено maxdm , 05-Фев-04 18:31 
>попробуй заменить sysread на read

О.К.
заменил sysread на read - всё заработало

Спасибо, solomon



"Передача данных из TEXTAREA методом POST на сервер"
Отправлено solotony , 05-Фев-04 20:35 
Пожалуйста :)
>Спасибо, solomon

только я solotony (от SOLOviev ANTonY)


"Передача данных из TEXTAREA методом POST на сервер"
Отправлено maryl , 05-Фев-04 13:27 
а ограничение на размер данных, передаваемых POST, меньше размера передаваемого файла?