1

我的网站有点问题。我已将 phpbb 集成到我的网站和主页上的登录表单中。此表单需要执行两个不同的操作。它首先需要运行 ucp.php(登录 phpbb)和 login.php(隐藏表单并在主屏幕上添加控制面板)。他们都自己工作,我只需要一种方法在用户登录时将它们放在一起。我已经研究了一段时间,但找不到解决方案。提前致谢, 乔希

我需要结合这个

<form action="./forums/ucp.php?mode=login" method="post" enctype="multipart/form-data"> 

有了这个

<form action="login.php" method="post" enctype="multipart/form-data"> 
4

2 回答 2

1

如果您必须“合并”这样的东西,我认为您的代码中存在严重的设计问题,但无论如何:

只需创建一个新文件,即。post_handler.php并把这段代码扔进去:

<?php
include('forums/upc.php');
include('login.php');
?>

将它放在与 login.php 相同的目录中。

然后调整您的表格以指向post_handler.php?mode=login

当然,像这样合并文件可能会导致疯狂的意外结果..

另一种选择虽然更复杂,但将使用login.php作为您的操作并在其中执行 curl 请求forums/ucp.php。(在 php.net 文档中搜索 Curl)

不幸的是,我无法提供更多建议,因为您尝试做的事情可能比在这里可以轻松回答的事情更复杂。

于 2013-09-18T18:42:34.633 回答
0

好吧,您可以尝试使用 ajax 的技巧。这是一个应该与 jquery 一起使用的示例:我不确定 preventDefaut() 是否不会在这里给我们带来问题,我们仍然可以使用 .submit() 。如果它不起作用。尝试将整个东西放入函数中,删除 preventDefault 并将此函数绑定到提交按钮中。

<form id="form_id" action="login.php" method="post" enctype="multipart/form-data">
User name: <inputy type="text" id="username" name="username" />

</form>

<script type="text/javascript">
    $(function() {
      //we prevent normal form submit
      $('#form_id').preventDefault();
      var data = {} ;
          //here u build data u want send by taking it from form field by field
      //example
      data['username'] = $('#username');

          //and you send this data via ajax to your upc script
          $.ajax({
        type: "POST",
        url: '/forums/ucp.php?mode=login',
        data: data,
                //in case of succes we send form normal way
        success: function( xhr ) { $('#form_id').submit(); },
        dataType: String
        });

    });

<script> 
于 2013-09-18T19:26:55.093 回答