php - 如何通过PHP发送POST数据

标签 php http post httprequest

<分区>

我在同一目录下的 Web 服务器上有 2 个文件:post.php 和 receive.php

post.php 文件发布用户名和密码。 receive.php 接收用户名和密码,并打印出来。

receive.php 文件如下所示:

<?php
    $user=$_POST["user"];
    $password=$_POST["password"];
    echo("The Username is : ".$user."<br>");
    echo("The Password is : ".$password."<br>");
?>

我有 post.php 的代码:

<?php
    $r = new HttpRequest('http://localhost/receive.php', HttpRequest::METH_POST);
    $r->addPostFields(array('user' => 'mike', 'password' => '1234'));
    try {
        echo $r->send()->getBody();
    } catch (HttpException $ex) {
        echo $ex;
    }
?>

我尝试了各种不同的方式来编写 post.php 文件,但都没有奏效。我也尝试过在线学习一些教程,但这也没有用。我是 PHP 菜鸟,请帮忙!!

最佳答案

post.php 的以下代码对我有用。我不是 100% 确定它的作用,但它确实有效。

<?php
$params = array ('user' => 'Mike', 'password' => '1234');

$query = http_build_query ($params);

// Create Http context details
$contextData = array ( 
            'method' => 'POST',
            'header' => "Connection: close\r\n".
                        "Content-Length: ".strlen($query)."\r\n",
            'content'=> $query );

// Create context resource for our request
$context = stream_context_create (array ( 'http' => $contextData ));

// Read page rendered as result of your POST request
$result =  file_get_contents (
              'http://localhost/receive.php',  // page url
              false,
              $context);

// Server response is now stored in $result variable so you can process it
echo($result);
?>

关于php - 如何通过PHP发送POST数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22281116/

相关文章:

javascript - 如何中断表单发布,直到按下确认按钮?

java - 通过POST发送参数到php文件并读取php文件的echo

php - 从postgresql中的序列化php数组中提取值

php - 为订单表建立数据库

Php mysql 不同表中多条记录的1个字段的SUM

Spring MVC 请求体错误处理

javascript - 基本身份验证 Angular2(非 CORS)

http - Google Calendar V3 REST API 中的批量请求

python - 如何使用 Curl 发布文件列表

javascript - 如何在按下提交按钮时更改表单的操作 ||让提交按钮只能点击一次?