PDA

Просмотр полной версии : Post...


BigIlya
22.10.2001, 10:55
Как заполучить информацию передаваемую методом POST напрямую?

Вот пример на Perl:

print "Content-type text/html\n\n";
sysread(STDIN, $xml, $ENV{'CONTENT_LENGTH'});
# теперь в $xml то что нам надо, а как это сделать на ПХП?

А на PHP я пробовал так:

<?
$f = fopen("php://stdin", "r");
fread($f, $xml, $CONTENT_LENGTH);
?>

Так PHP мне говорит, я не прав... :confused:

ПАМАГИТЕ...пожалуйста...

DeepDiver
22.10.2001, 22:53
Странно... Я попробовал как у тебя - единственный глюк в строчке чтения:
$xml = fread($f,getenv('CONTENT_LENGTH'));

Однако ПХП говорит, что неправильный дескриптор файла (при открытии!). Причем иногда говорит, иногда - нет....
В обсчем я че-та не понял....
Дескриптор 'php://stdin' был реализован только в версии 3 с чем-то и выше... Однако у меня 4 стоит и не пашет.

P.S. Да, после чтения закрой файл fclose($f);

BigIlya
23.10.2001, 11:25
Вот и у меня те же самые проблемы, делаешь все как в доке, а на выходе проблемы. И начинаешь после этого задумываться, а все ли так хорошо в ПХП ;)

DeepDiver
23.10.2001, 13:46
Продукт без багов ущербен ;)