curl post picture multipart / form-data,php cURL需要帮助!

时间:2010-05-07 16:35:14

标签: php post curl

我正在尝试使用php cURL将图片上传到特定网站,但我真的不明白我需要发送哪些参数,因为数据看起来有点奇怪。这是我用http分析器得到的
Type : multipart/form-data; boundary=---------------------------182983931283 -----------------------------182983931283 Content-Disposition: form-data; name="file"; filename="Blue hills.jpg"
Content-Type: image/jpeg

-----------------------------182983931283 Content-Disposition: form-data; name="file"; filename="Blue hills.jpg"
Content-Type: image/jpeg

Here appears the souce of the image itself like "ÿØÿàÿØÿàÿØÿàÿØÿàÿØÿàÿØÿà" -----------------------------182983931283 Content-Disposition: form-data; name="action" images -----------------------------182983931283 Content-Disposition: form-data; name="anonymous_email"

Y -----------------------------182983931283 Content-Disposition: form-data; name="site_id"

1 -----------------------------182983931283 and so on other parameters. The issue that I have is that I don't understand what is the boundary, where do I get it from (because it doesn't appear in the html document that generates the POST and how should I make the post . If you would give me a simple example to post the above parameters to http://example.com I will definitely get the trick . Currently I'm using the following function to make the post :

   function processPicturesPage($title, $price, $numbedrooms, $description) {        //Set the login parameters and initiate the Login process    
    $fields = array(

"changedImages" => "", "site_id" => "1", "posting_id" => "", "current_live_date" => "", "images_loaded" => "", "image_actions" => "", "title" => $title,

); foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; } rtrim($fields_string,'&'); $URL = "http://www.example.com/cgi-bin/add_posting.pl"; return $this->processCurlrequest($URL, count($fields), $fields_string); }

我有卷曲选项(Cookie等)和网址。

1 个答案:

答案 0 :(得分:2)

发送多部分数据时,边界用作每个字段之间的分隔符。这些边界由cURL自动创建,您不必担心它们。