PHP
downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

http_put_data> <http_post_data
Last updated: Sat, 24 Mar 2007

view this page in

http_post_fields

(PECL pecl_http:0.10.0-1.4.1)

http_post_fields — Perform POST request with data to be encoded

Popis

string http_post_fields ( string $url [, array $data [, array $files [, array $options [, array &$info]]]] )

Performs an HTTP POST request on the supplied url.

See http_get() for a full list of available parameters and options.

Seznam parametrů

url

URL

data

Associative array of POST values

files

Array of files to post

options

Request options

info

Request/response information

Návratové hodnoty

Returns the HTTP response(s) as string on success, or FALSE on failure.



http_put_data> <http_post_data
Last updated: Sat, 24 Mar 2007
 
add a note add a note User Contributed Notes
http_post_fields
ya at kirilloid dot ru
02-Mar-2008 04:59
comment to wormholio's answer:
if you use regular expression, then use it fully:
"/HTTP\/\d\.\d 302 Found/"
Some servers still can use HTTP 1.0
wormholio at gmail dot com
29-Jan-2008 04:32
To use POST to submit a form to a site which requires a cookie for authentication you put the cookie in the $options array.  Example:

<?php

$auth
="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";

$form_url="http://pirates.spy-hill.net/forum_reply.php?thread=663";

$message  = "RoboCodeDwarf now has the gold. \n\n";
$message .= "RoboCodeDwarf sez: [quote] " . `fortune -s` . "[/quote]\n";

$form_fields = array(
                    
'content' => $message,
                    
'add_signature' => 'add_it',
                    
'submit' => 'Post reply'  );
$form_files=array();
$form_options=array( 'cookies' => array( 'auth' => $auth ) );

$response = http_post_fields($form_url, $form_fields, $form_files, $form_options );

$n = preg_match("/HTTP\/1.1 302 Found/", $response, $matches);
if(
$n<1) echo "FAILED\n";
 else    echo
"POSTED\n";

?>
thomasxholder at compuserve dot de
07-Jan-2007 12:21
It was hard to figure out how to actually post files with this function. The "Array of files to post" is an array of associative arrays, each need the keys "name", "type" and "file". Consider this example code:

<?php
$files
= array(
    array(
       
'name' => 'somename',
       
'type' => 'text/plain',
       
'file' => $filename
   
)
);
$http_response = http_post_fields($url, $data, $files);
?>

http_put_data> <http_post_data
Last updated: Sat, 24 Mar 2007
 
 
show source | credits | sitemap | contact | advertising | mirror sites