Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/246.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何将POST数据发送到外部框架中的外部页面?_Php_Html_Forms_Post_Frame - Fatal编程技术网

Php 如何将POST数据发送到外部框架中的外部页面?

Php 如何将POST数据发送到外部框架中的外部页面?,php,html,forms,post,frame,Php,Html,Forms,Post,Frame,我很难做到我在标题中解释的事情。我想知道是否有人能帮我 所以我会再详细解释一遍: 我有一个网页,其中包含一个表单,可以将帖子数据发送到外部URL(不是mysite.com,而是hissite.com,我希望你能理解) 我使用HTML框架在自己的网站(如mysite.com/hissite)内创建了一个页面,以隐藏其他网站的实际URL。 问题是我无法将表单输入传递到hissite.com,而是通过网站内部的框架 我基本上想要以下几点: 1.用户登录我的网站。 2.我的登录表单将登录信息传递到其他网

我很难做到我在标题中解释的事情。我想知道是否有人能帮我

所以我会再详细解释一遍:

我有一个网页,其中包含一个表单,可以将帖子数据发送到外部URL(不是mysite.com,而是hissite.com,我希望你能理解) 我使用HTML框架在自己的网站(如mysite.com/hissite)内创建了一个页面,以隐藏其他网站的实际URL。 问题是我无法将表单输入传递到hissite.com,而是通过网站内部的框架

我基本上想要以下几点: 1.用户登录我的网站。 2.我的登录表单将登录信息传递到其他网站。 3.用户已登录,但被重定向到其他网站,他被重定向到包含其他网站的“我的网站”内的框架

我不知道如何更好地解释它,但我希望有人能理解我,帮助我完成我的项目

我必须指出,我网页上的表单与其他网站上的表单具有相同的结构(字段、字段名称等)。所以我相信通过框架传递输入会非常容易。好,。。。我意识到这并不容易

表格如下:

<form action="/home/signin" method="post" name="loginForm" class="large-form" id="loginForm" >
  <fieldset>
    <label for="username">Username</label>
    <input type="text" name="username" tabindex="1" id="username" value="" />
</fieldset>
<fieldset>
  <label for="password">Password</label>
  <input type="password" name="password" tabindex="2" id="password" value="" />
  <input type="hidden" name="themeName" value=""/>
</fieldset>
<br/>
<div id="login-button">
  <input type="submit" value="Log In" tabindex="3" />
</div>

用户名
密码


提前感谢您的帮助。

在这种情况下,您需要使用ajax调用,将您想要的信息发送到另一个页面,然后您可以根据需要继续处理数据,只需在表单提交时调用javaScript,如:

$.ajax({
        url: siteUrl,
        type: "post",
        async:true,
        dataType: 'json',
        success: function(data){
your function
        },
        error: function(e){
your error function
        }
    });

除了代理第三方网站,用你的方法,这是不可能的

你可以:

正常使用帧

这将涉及将表单上的
target
属性设置为框架名称,将
操作设置为第三方URL

只要第三方网站没有对其登录表单实施任何保护,这将起作用

这种方法不会为您提供用于登录的凭据(尽管您可以使用JavaScript嗅探它们)

代理整个站点

除了将
操作
设置为站点上的URL之外,这将涉及与上面相同的内容。然后,您必须使用服务器端代码向第三方站点发出HTTP请求(在服务器上维护每个用户的cookie jar)。对于每个请求,您必须解析每个响应并更改HTML、CSS、JavaScript等中的任何URL,以便它们继续工作(因为相对URI将失败)



无论哪种方式,要求用户输入您网站上第三方站点的凭据都是一个非常可疑的请求。这样的凭据应该是保密的,不能共享。

此尝试将被同源策略阻止。谢谢您的回答。我真的很感谢你的帮助。但我很抱歉地说,我对ajax一无所知。我刚开始学习网络语言。我对PHP、HTM和CSS有很好的理解,但仅此而已。如果你能更具体一点,那就太棒了。但是,我想将表单输入存储在$u会话中,然后将用户重定向到包含网页的框架,然后使用一些PHP在$u会话中读取数据,并通过POST自动将数据发送到原始网站上的表单,而无需任何人工交互。您认为使用我的想法可以实现吗?我期待着你的回应。非常感谢你。