RE: Question in posting form-data

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Yes. I did modify the original since I need to send data to a program which takes only form-data.
"content-disposition: " came from RFC 2388. I don't think the program can take application/x-www-form-urlencoded content. Further help needed. Thanks.

-Minghua
-----Original Message-----
From: Richard Lynch [mailto:ceo@xxxxxxxxx]
Sent: Thu 12/16/2004 11:46 AM
To: Yao, Minghua
Cc: Erwin Kerk; php-general@xxxxxxxxxxxxx
Subject: RE:  Question in posting form-data
 
You also need to URLEncode the $value, either before you pass it in, or
inside the function itself.

Where did you get this PostToHost function?...

Did you modify it?

Cuz, like, I don't think this one is very good...

Where did that "content-disposition: " come from?

And virtually every FORM on the web has more than one input, so you're
going to need to handle that.

Google for "PostToHost Rasmus Lerdorf" to find the "original" and compare
it with yours.

Yao, Minghua wrote:
> Thanks. I changed
>
> fputs($fp, "$value\n");
>
> to
>
> fputs($fp, "$name=$value\n");
>
>
> But I still got the same message.
>
> -Minghua
>
> -----Original Message-----
> From: Erwin Kerk [mailto:erwin@xxxxxxxxxxx]
> Sent: Thu 12/16/2004 6:30 AM
> To: Yao, Minghua
> Cc: php-general@xxxxxxxxxxxxx
> Subject: Re:  Question in posting form-data
>
> Yao, Minghua wrote:
>> Hi, all,
>>
>> I am testing how to post form-data to a host using the following code
>> (test.php):
>>
>> <?php
>>         function PostToHost($host, $path, $name, $value) {  // Test of
>> posting form-data
>>   		$fp = fsockopen($host,80);
>>
>>   		fputs($fp, "POST $path HTTP/1.1\n");
>>   		fputs($fp, "Host: $host\n");
>>   		fputs($fp, "Content-Type: multipart/form-data\n");
>>  		fputs($fp, "content-disposition: form-data; name=$name\n");
>>   		fputs($fp, "Connection: close\n\n");
>>
>>   		fputs($fp, "$value\n");
>>
>>   		$res = "";
>> 		while(!feof($fp)) {
>>       		$res .= fgets($fp, 128);
>>   		}
>>
>>   		fclose($fp);
>>
>>   		return $res;
>> 	}
>
> Check your function carefully. Where are you using the $name of the value?
>
> Nowhere! Therefore the receiving script cannot identify the value as x.
>
> Try: fputs($fp, "$name=$value\n");
>
>
>
> Erwin
>
>
>
>


-- 
Like Music?
http://l-i-e.com/artists.htm





[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux