Php 卷曲,两个位置和形成步骤

Php 卷曲,两个位置和形成步骤,php,forms,validation,curl,Php,Forms,Validation,Curl,我有两个网站,A和B 站点A代码: <?php if ($_POST['data']) echo "Thank you"; ?> <form action="" method='POST'> <input type="text" name='data'> <input type="submit"> </form> 站点B代码: <?php $url = 'http://site_a.com'; $

我有两个网站,A和B

站点A代码:

<?php
if ($_POST['data']) echo "Thank you";
?>

<form action="" method='POST'>
    <input type="text" name='data'>
<input type="submit">
</form>

站点B代码:

 <?php 
  $url = 'http://site_a.com';   
  $ch = curl_init();
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt( $ch, CURLOPT_POST, true ); 

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

    echo $data;

我会使用iframe或ajax请求来实现这一点。由于您
echo$data
,因此站点A源被嵌入到站点B,并在浏览器中作为一个完整站点(而不是站点A的表单)进行解析

您被重定向回站点A,因为当您从站点A卷曲表单时,
action
属性将成为站点A上表单的完整地址

如果您想留在站点B,您需要:

  • 在站点B上回显表单之前,删除
    操作
    属性的内容;通过这种方式,表单将发布到自身(在站点B)
  • 在站点B的代码中添加一个检查,查看是否生成了帖子,如果是,则将帖子参数添加到对站点a的curl调用中。然后站点a将返回正确的结果(谢谢)

在两个站点上分别发布表单可能更容易…

正如我之前所说,iFrame和Ajax都不是我的解决方案。我想使用站点B中站点A(表单)的现有片段。站点A表单将一些数据写入本地公司数据库。我不想在源代码中发布此IP地址。如果表单提交到站点A,则您仍将在源代码中显示此IP地址。如果您在表单中使用相对操作,那么它将被发布到站点B,而A被忽略,但您也应该在站点B中为该表单编写一个处理程序。我希望在我将操作留空时有任何方法,所有操作都将在站点B上完成。因此,我理解隐藏站点A的IP地址,只有一种解决方案是在站点B上准备表单/验证/数据库编写?