Php 如何卷曲表单提交的结果

Php 如何卷曲表单提交的结果,php,forms,redirect,curl,Php,Forms,Redirect,Curl,我试图创建一个页面,将表单提交到另一个网站上的页面,然后检索“结果页面”html并将其存储为变量 问题有两个方面:首先,我是一个编程新手,不知道搜索什么,尽管我在谷歌上搜索了几天(我最初尝试在框架中搜索,并学习了SOP)。其次,如果我只是简单地提交表单,它会正确地加载到另一个域的下一个页面上,但该页面会做一些事情,然后重定向到具有我想要的实际结果的页面 表单提交本身的一切都很好,我只是不知道如何将结果(它重定向到的最终页面的HTML)作为PHP中的变量 它说: mysite.com/mypage

我试图创建一个页面,将表单提交到另一个网站上的页面,然后检索“结果页面”html并将其存储为变量

问题有两个方面:首先,我是一个编程新手,不知道搜索什么,尽管我在谷歌上搜索了几天(我最初尝试在框架中搜索,并学习了SOP)。其次,如果我只是简单地提交表单,它会正确地加载到另一个域的下一个页面上,但该页面会做一些事情,然后重定向到具有我想要的实际结果的页面

表单提交本身的一切都很好,我只是不知道如何将结果(它重定向到的最终页面的HTML)作为PHP中的变量

它说:

mysite.com/mypage.php


我需要上一个表单中的html。

您可以使用类似的方法,其中CURLOPT_POSTFIELDS数组是您的html表单字段

$h = curl_init();

  curl_setopt($h, CURLOPT_URL, "path/to/form.php"); 
  curl_setopt($h, CURLOPT_POST, true);
  curl_setopt($h, CURLOPT_POSTFIELDS, array(
  'txtfield1' => 'x',
  'txtfield2' => 'y'
  ));
  curl_setopt($h, CURLOPT_HEADER, false);
  curl_setopt($h, CURLOPT_RETURNTRANSFER, 1);

  $result = curl_exec($h);
  echo $result;
再次阅读有关重定向的问题。
请参阅下面的“Du D”注释,您还需要该行

我认为他的页面重定向到另一个页面,因此您可能需要添加此选项以允许curl跟随重定向。curl_setopt($h,CURLOPT_FOLLOWLOCATION,TRUE);
othersite.com/results2.php?session_key=abcdefghi123
$h = curl_init();

  curl_setopt($h, CURLOPT_URL, "path/to/form.php"); 
  curl_setopt($h, CURLOPT_POST, true);
  curl_setopt($h, CURLOPT_POSTFIELDS, array(
  'txtfield1' => 'x',
  'txtfield2' => 'y'
  ));
  curl_setopt($h, CURLOPT_HEADER, false);
  curl_setopt($h, CURLOPT_RETURNTRANSFER, 1);

  $result = curl_exec($h);
  echo $result;