0

我有两个站点,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;

来自站点 a 的站点 B 显示表单。一切都很好,但我也需要查看站点 B 上的感谢页面。现在,我被重定向到站点 A。如何在站点 B 上显示站点 A(表单/验证结果/感谢页面)的每个步骤?所以,我需要像 iFrame 一样显示它。我知道我也可以使用 JSONP,但我无法在代码中显示源 URL(我不想发布站点 A URL 以防止 Google 索引)

4

2 回答 2

1

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

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

  • action在站点 B 上回显表单之前删除属性的内容;这样,表单将发布到自身(在站点 B);
  • 在站点 B 的代码中添加检查以查看是否发布了帖子,如果是,请将帖子参数添加到您对站点 A 的 curl 调用中。然后站点 A 会给您返回正确的结果(谢谢)。

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

于 2012-11-15T22:19:55.217 回答
0

我会为此使用 iframe 或 ajax 请求。由于您echo $data随后将站点 A 源嵌入到站点 B 并在浏览器中解析为一个完整的站点(而不是站点 A 的表单)。

于 2012-11-15T22:07:25.817 回答