【问题标题】:How to send a $_POST data to another server? [duplicate]如何将 $_POST 数据发送到另一台服务器? [复制]
【发布时间】:2017-01-21 03:20:33
【问题描述】:

如何将 $_POST 请求中包含的数据发送到另一台服务器? 这是我的 php 文件

<?php
if(isset($_POST['submit'])){
    $name = $_POST['name'];
    $email = $_POST['email'];
    $contact = $_POST['contact'];
    $address = $_POST['address'];
    $ip = $_SERVER['REMOTE_ADDR'];
    if($name !=''&& $email !=''&& $contact !=''&& $address !='')
    {
        header("Location:http://example.com/loginsuccess/");
    }
    else{
        ?><span><?php echo "You must fill out all the fields";?></span> <?php
    }
}
?>

如果我想记录$ip,那么如何将其添加到另一台服务器?例如,如果我的域是 example.com,那么我希望 $ip 日志继续出现在 myexample.com 上。我不知道如何做到这一点,我花了很长时间尝试和试验如何做到这一点,但我无法弄清楚,所以这就是我在 stackoverflow 上的原因

【问题讨论】:

  • @FastSnail 让我很困惑 =/
  • 问题不在于将请求发送到另一台服务器,问题在于另一台服务器知道如何处理该请求。你是控制另一台服务器的人吗?
  • @apokryfos 是的,我想我可以在另一台服务器上添加一个 php 文件来处理请求?但是我会在那个 php 文件上放什么?
  • 您确实错误地表达了这个问题。然而,这个问题相当广泛。有很多不同的方法可以处理远程服务器中的这种日志记录。事实上,您甚至不需要在发送数据时使用 POST。最典型的做法是向远程服务器发送类似myexample.com/handler.php?ip=$ip 的请求,当服务器收到这样的请求时,将$_GET["ip"] 的内容存储在数据库表或文件中。
  • @apokryfos 对不起,我的措辞是错误的,但就像我会将 $_POST 发送到另一台服务器并存储它一样?我该怎么做,因为我已经在 php 文件中有一个重定向,如您所见

标签: php


【解决方案1】:
 <?php
if(isset($_POST['submit'])){
    $name = $_POST['name'];
    $email = $_POST['email'];
    $contact = $_POST['contact'];
    $address = $_POST['address'];
    $ip = $_SERVER['REMOTE_ADDR'];
    if($name !=''&& $email !=''&& $contact !=''&& $address !='')
    {
        $curl_handle=curl_init();
        curl_setopt($curl_handle,CURLOPT_URL,'http://myexample.com');
        curl_setopt($curl_handle, CURLOPT_POST, 1);
        curl_setopt($curl_handle, CURLOPT_POSTFIELDS, "name=$_POST['name']&email=$_POST['email']&contact=$_POST['contact']&address=$_POST['address']");
        $res = curl_exec($curl_handle);
        curl_close($curl_handle);
        if ($res) {
            echo "success message";
        }
    }
    else{
        ?><span><?php echo "You must fill out all the fields";?></span> <?php
    }
}`enter code here`
?>

【讨论】:

  • 谢谢!但是我在那个 php 文件中没有看到 myexample.com,所以我有点困惑。它是如何到达 myexample.com 的?
  • 替换为你的服务器主机名。
  • 我看到了,但我没有看到 2 个网址,我只看到“example.com/loginsuccess
  • 你需要为哪个服务器发布数据?
  • 我需要将 example.com 传递给 myexample.com(这些不是我的网站,我只是为了举例说明)
猜你喜欢
  • 2012-03-10
  • 1970-01-01
  • 2015-06-25
  • 1970-01-01
  • 2013-12-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-10-22
相关资源
最近更新 更多