0

我在 iframe 中有几个登录页面,我只想使用一个表单将登录凭据发布到使用相同用户名和密码的各种表单。

function myform(){document.form1.submit();}<--作品

function myform(){/path/to/other_form/login.php.document.form2.submit();}<--不起作用

当所有表单都在同一个 php 页面中,但不在 iframe 和服务器上的不同文件夹中时,我做了类似的事情。

任何建议将不胜感激。谢谢你。

形式

<form id="form1" name="form1" action="thisform.php" method="post">
 <input type="hidden" name="act" value="login">
  <table ...
     <input name="username" id="username" type="text"/>
     <input name="password" type="password" id="password"/>
     <a href="javascript:myform()"/>Login</a></td>
      .../table>
</form>

php

<?php
error_reporting(0);
session_start();
include("config.php");
include('editor.php');

if(isset($_REQUEST["act"])) {
if ($_REQUEST["act"]=='logout') {
        $_SESSION["BLOgLogin"] = "";
        unset($_SESSION["BLOgLogin"]);
} elseif ($_REQUEST["act"]=='login') {
if ($_REQUEST["username"] == $CONFIG["admin_user"] and $_REQUEST["password"] ==     $CONFIG["admin_pass"]) {
    $md_sum=md5($CONFIG["admin_user"].$CONFIG["admin_pass"]);
    $sess_id=$md_sum.strtotime("+1 hour");
    $_SESSION["BLOgLogin"] = $sess_id;      
    $_REQUEST["act"]='posts';
} else {
    $message = 'Incorrect login details.';
}
}
} 
?>
4

1 回答 1

0

从技术上讲,您不能将表单提交到两个页面。网络使用请求/响应模型,因此您不能提交两个请求,或返回两个响应。但是,您可以伪造这个。您需要做的是创建一个表单,其中包含您要提交的两个表单的所有字段。然后,将您的表单提交到一个自定义页面,该页面使用 cURL 对每个表单执行单独的请求,然后将它们合并为一个响应。这是 cURL 文档: http: //php.net/manual/en/book.curl.php

于 2012-06-25T18:53:00.753 回答