php curl post 时出现的问题解决

 更新时间:2014年01月30日 23:15:04   作者:  
这篇文章主要介绍了php curl post 时出现问题的解决方法,需要的朋友可以参考下
在 a.php 中以 POST 方式向 b.php 提交数据,但是 b.php 下就是无法接收到数据,而 CURL 操作又显示成功,非常诡异。原来,“传递一个数组到CURLOPT_POSTFIELDS,cURL会把数据编码成 multipart/form-data,而然传递一个URL-encoded字符串时,数据会被编码成 application/x-www-form-urlencoded。
",而和我一样对 CURL 不太熟悉的人在编写程序时,代码往往是下面的样子:

复制代码 代码如下:

$data = array( 'Title' => $title, 'Content' => $content, 'ComeFrom' => $comefrom ); 
curl_setopt($ch, CURLOPT_DNS_USE_GLOBAL_CACHE, false); 
curl_setopt($ch, CURLOPT_URL, 'http://example.com/b.php'); 
curl_setopt($ch, CURLOPT_POST, 1); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $data); 
curl_exec($ch);


也就是将所要提交的数据以数组的形式通过 POST 发送,而这样就会导致 CURL 使用“错误"的编码“multipart/form-data",其效果相当于我们直接以“<form method="post" action="b.php" enctype="multipart/form-data">"这样的表单来完成操作,大家可以试试,这时的“b.php"是无论如何也无法通过 $_POST 来接收数据的。

所以,正确的做法应该是将上述范例代码中的 $data 由数组变为经 urlencode() 编码后的

相关文章

  • php表单提交问题的解决方法

    php表单提交问题的解决方法

    不是第一次写表单提交了,但还是遇到了无法解决的问题。研究了将近一天,问了N多网友,最终解决了问题,过程颇为曲折。感谢大家的帮助。
    2011-04-04
  • php递归创建和删除文件夹的代码小结

    php递归创建和删除文件夹的代码小结

    有时候需要递归创建和删除文件夹,那么就可以参考下面的代码
    2012-04-04
  • PHP判断手机是IOS还是Android

    PHP判断手机是IOS还是Android

    这篇文章主要介绍了PHP判断手机是IOS还是Android的三个示例,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2015-12-12
  • 解析PHP工厂模式的好处

    解析PHP工厂模式的好处

    本篇文章是对PHP工厂模式的好处进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • php通过pecl方式安装扩展的实例讲解

    php通过pecl方式安装扩展的实例讲解

    下面小编就为大家分享一篇php通过pecl方式安装扩展的实例讲解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-02-02
  • PHP实现的数独求解问题示例

    PHP实现的数独求解问题示例

    这篇文章主要介绍了PHP实现的数独求解问题,涉及php数组与字符串的遍历、比较、判断、运算等相关操作技巧,需要的朋友可以参考下
    2017-04-04
  • PHP实现抓取HTTPS内容

    PHP实现抓取HTTPS内容

    这篇文章主要介绍了PHP实现抓取HTTPS内容,以及遇到的问题的解决方法,需要的朋友可以参考下
    2014-12-12
  • PHP实现执行外部程序的方法详解

    PHP实现执行外部程序的方法详解

    这篇文章主要介绍了PHP实现执行外部程序的方法,结合实例形式分析了php执行外部程序的常用函数相关使用技巧与注意事项,需要的朋友可以参考下
    2017-08-08
  • PHP 字符串分割和比较

    PHP 字符串分割和比较

    比较两个字符串是否相等,最常见的方法就是使用“===”来判断,至于它和“==”的区别,简单来说就是前者强调“Identical”类型也要求一样;后者要求“Equal”,值相同就可以了。
    2009-10-10
  • php中file_get_contents与curl性能比较分析

    php中file_get_contents与curl性能比较分析

    这篇文章主要介绍了php中file_get_contents与curl性能比较,以实例形式详细分析了file_get_contents与curl的区别以及运行效率的对比,需要的朋友可以参考下
    2014-11-11

最新评论