欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

如何用PHP只发送POST而不返回值

程序员文章站 2022-04-17 08:04:27
...
RT.
我只要让PHP模拟HTTP POST发送NVP,到本地的其他文件。
而不用返回任何值,
怎么配置参数呢?
$ch = curl_init();
curl_setopt($ch,CURL_URL,$url);
curl_setopt($ch,CURL_POST,true);
curl_setopt($ch,CURL_POSTFIELDS,$postfields);
...
除了这几个之外还需要配置什么参数呢?
求大神


回复讨论(解决方案)

不返回值?你不管他返回不就行了吗?

不返回值?你不管他返回不就行了吗?



是啊,我就是这样的:
function httppost($url,$postvalue)
$ch = curl_init();
curl_setopt($ch,CURL_URL,$url);
curl_setopt($ch,CURL_POST,true);
curl_setopt($ch,CURL_POSTFIELDS,$postfields);
curl_setopt($ch,CURL_RETURNTRANSFER, 0);
curl_exec($ch);
curl_close($ch);
}

然后在a.php里面
$url="http://mysite.com/b.php";
$postvalue="name1=one&name2=two";
httppost($url,$postvalue);

然后在b.php里面,
print_r($_POST);

结果在b.php里面输出的数组什么都没有。


你看还有没有漏掉什么环节啊?

接受了也不出来就行。

接受了也不出来就行。



可是我上面那段代码就是差不多那样的啊,
但测试结果收不到传递的值,
麻烦能帮我看下 有没有缺少什么东西吗

错误也太多了点吧?

function httppost($url,$postvalue) {  $ch = curl_init();  curl_setopt($ch, CURLOPT_URL, $url);  curl_setopt($ch, CURLOPT_POST, true);  curl_setopt($ch, CURLOPT_POSTFIELDS, $postvalue);  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0); //不要返回数据应改设为1  curl_exec($ch);  curl_close($ch);}

在A.php里面不输出,你在B.php输出什么东西,都不会看到的……

在A.php里面不输出,你在B.php输出什么东西,都不会看到的……


为什么啊,能说具体点吗

错误也太多了点吧?PHP code
function httppost($url,$postvalue) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $pos……



啊除了那个returntransfer还有哪里不对呢?
谢谢指出,

还有,我在一个脚本里用了httppost()函数,然后接着js转跳到目标url的页面,
目标URL里有用来测试print_r($POST),
可是转跳过去以后页面里什么都没输出,$post数组是空的
你知道是怎么回事呢

其实我的意思是想在服务器端两个文件之间传递数据,但不想使用cookie/session或者memcache之类的方式,
最好是想在curl发送POST的同时转跳到另一个文件,同时实现数据的传送,就像HTML POST表单那样,
比如,
if ($verify) {
//验证成功
post($url,$postvalue);
?//发送Post信息的同时,页面转跳到目的$url,
}
我希望是这样的,
如果实现不了的话 就只能用php呼出

表单然后js强制提交了,但那样数据会显示在客户端源码里面,而且刷新以后会有表单的提示。

直接输出
curl_exec($ch);
才会看到是什么结果……是不是把你给绕晕了……不知那是头那是尾了……==|

感觉LZ的做法很诡异啊,用HTTP协议进行文件内容交互。。。

常量参数全都写错了!

是CURLOPT_xxx
不是CURL_xxx

你这样写没一个生效的。

楼主,我也是跟你一样的想法, 现在你实现了吗