cURL无法提交POST数据

Predrag Beocanin

我正在尝试使用cURL提交一个简单的表单。获取登录cookie并提交所需的数据后,我得到一个随机响应,并且表单提交失败。这是浏览器提交表单时的外观:

formPost:cur_product_form_new_86286
curCheckbox:Y
C2cProductsListing[business_hr_from]:10:00:00
C2cProductsListing[business_hr_to]:09:30:00
C2cProductsListing[online_hr]:35
C2cProductsListing[offline_hr]:16
C2cProductsListing[non_business_hr]:17
C2cProductsListing[actual_quantity]:25000
C2cProductsListing[minimum_quantity]:25000
C2cProductsListing[products_base_currency]:USD
C2cProductsListing[products_price]:88
delivery[1]:1
C2cProductsListing[c2c_products_listing_id]:86286

这是我提交表单时的样子:

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://www.g2g.com/sell/manageListingInfo'); // open a protected page
curl_setopt($ch, CURLOPT_REFERER, 'http://www.g2g.com/sell/manageListing?game=2522&product_type=19248');
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.A.B.C Safari/525.13");
$data = array(
    'formPost' => 'cur_product_form_new_86286',
    'curCheckbox' => 'Y',
    'C2cProductsListing' => array(
        'business_hr_from' => '09:00:00',
        'business_hr_to' => '08:30:00',
        'online_hr' => '35',
        'offline_hr' => '16',
        'non_business_hr' => '17',
        'actual_quantity' => '25000',
        'minimum_quantity' => '25000',
        'products_base_currency' => 'USD',
        'products_price' => '25',
        'c2c_products_listing_id' => '86286'
    ),
    'delivery' => array(
        '1' => '1'
    )
);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
curl_setopt($ch, CURLOPT_REFERER, 'http://www.g2g.com/sell/manageListing?game=2522&product_type=19248');
curl_setopt($ch, CURLOPT_COOKIESESSION, true);
curl_setopt($ch, CURLOPT_FAILONERROR, false);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_FRESH_CONNECT, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
curl_setopt($ch, CURLOPT_COOKIEFILE, "cookie.txt");
print_r(curl_getinfo($ch));

curl_close($ch);

这是我得到的完全随机的响应:

Array ( [url] => http://www.g2g.com/sell/manageListingInfo [content_type] => [http_code] => 0 [header_size] => 0 [request_size] => 0 [filetime] => 0 [ssl_verify_result] => 0 [redirect_count] => 0 [total_time] => 0 [namelookup_time] => 0 [connect_time] => 0 [pretransfer_time] => 0 [size_upload] => 0 [size_download] => 0 [speed_download] => 0 [speed_upload] => 0 [download_content_length] => -1 [upload_content_length] => -1 [starttransfer_time] => 0 [redirect_time] => 0 [certinfo] => Array ( ) )

我刚刚发布的数组是的结果print_r(curl_getinfo($ch))我怎么到这里来?我使用所有必要的数据完全模拟了浏览器的请求(除了它是cURL而不是实际的浏览器),但表单似乎没有提交?

反正

您不是在调用curl_exec实际执行查询。curl_getinfo之后再打电话如果要返回数据,请使用的返回值curl_exec代替curl_getinfo例如:

$data = curl_exec($ch);
echo $data;

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Bootstrap表单提交无法使用$ _POST数据

来自分类Dev

数据表Jquery无法从表提交POST

来自分类Dev

无法获取通过Slim提交的JSON POST数据

来自分类Dev

数据表Jquery无法从表提交POST

来自分类Dev

CURL发送POST数据

来自分类Dev

CURL发送POST数据

来自分类Dev

如何获取curl POST数据?

来自分类Dev

使用curl的RAW数据POST API无法正常工作,但可以在POSTMAN中执行

来自分类Dev

无法接收POST数据

来自分类Dev

无法接收POST数据

来自分类Dev

提交表格时无法获得POST值

来自分类Dev

使用POST将数据提交到网站

来自分类Dev

无需提交的POST表单数据

来自分类Dev

AJAX-提交多个POST数据

来自分类Dev

cURL POST请求无法与python请求等效

来自分类Dev

无法让 curl 在 drupal-7 中提交简单的内容类型

来自分类Dev

在cURL POST数据中使用字符%

来自分类Dev

CURL + POST +多部分/表单数据

来自分类Dev

如何使用cURL显示POST数据?

来自分类Dev

在cURL POST数据中使用字符%

来自分类Dev

从Curl POST请求中提取数据

来自分类Dev

cURL上传文件并发送POST数据

来自分类Dev

使用cURL检索POST响应数据

来自分类Dev

带有 php curl 的 JSON POST 数据

来自分类Dev

JSON 数据的 POST 与 curl 的请求不同

来自分类Dev

无法显示提交的数据到日志

来自分类Dev

无法将WTForms数据提交到MySQL

来自分类Dev

提交后无法插入数据库

来自分类Dev

PHP网址无法检索提交的数据