【问题标题】:open new window with php code after form submits results表单提交结果后用php代码打开新窗口
【发布时间】:2012-08-30 18:26:15
【问题描述】:

这是我一直在编写的脚本,它应该集成用户并在打开时通过

<?php

$name = $_POST['name']; // contain name of person
$pass = $_POST['pass']; // Email address of sender 
$link = window.open(https://secure.brosix.com/webclient/?nid=4444&user=$name&pass=$pass&hideparams=1 'width=710,height=555,left=160,top=170');

echo $link;

?>

我这样做对吗,我想在用户将表单提交到 php 代码后打开一个弹出窗口,但我总是收到错误。

【问题讨论】:

  • 服务器错误网站在检索website.com/logo.php 时遇到错误。它可能因维护而停机或配置不正确。
  • 您是在脚本标签内打印 javascript 吗?
  • 仍然是相同的结果,它打开另一个选项卡并显示“window.open ......170)”作为文本,即使带有脚本标签

标签: php forms validation popup window


【解决方案1】:

把你的代码改成这个

<?php

$name = $_POST['name']; // contain name of person
$pass = $_POST['pass']; // Email address of sender 
$link = "<script>window.open('https://secure.brosix.com/webclient/?    nid=4510&user=$name&pass=$pass&hideparams=1', 'width=710,height=555,left=160,top=170')</script>";

echo $link;

?>

补充说明

您应该考虑使用fancybox,它可以使用 iframe 在弹出窗口中加载整个网页。还有其他选择,请随意探索!

【讨论】:

  • 当然,如果您打开的窗口不是用户操作的直接结果,您可能会被弹出窗口拦截器发现。
  • 不打算打开一个窗口,它只是在浏览器上显示它 "window.open('secure.brosix.com/webclient/…', 'width=710,height=555,left=160,top=170')"
  • OP 正在谈论一些错误。我的解决方案将摆脱错误。如果担心弹出窗口阻止程序,请使用css 创建Models,如Twitter Bootstrap
  • 仍然是相同的结果,它打开另一个选项卡并显示“window.open ......170)”为文本
  • @Link &lt;script&gt; 有错别字,之前拼写为 &lt;scipt&gt;.. 现在应该可以工作了.. 但正如@Cody 所说,它被弹出窗口阻止程序阻止了!你需要找到另一种解决方案来解决它。
【解决方案2】:

您忘记在 $link 的值周围加上引号和标签。

$link = "<script>window.open(\"https://secure.brosix.com/webclient/?nid=4444&user=$name&pass=$pass&hideparams=1width=710,height=555,left=160,top=170'\")</script>";

【讨论】:

  • 仍然是相同的结果,它打开另一个选项卡并显示“window.open ......170)”为文本
【解决方案3】:

您不必使用 php,您只需创建具有特定 id 的提交按钮,然后告诉 jquery 在提交时触发新标签

<form id="itemreport_new" type="post" action="">
          <input id="submit2" type="submit" value="show"  target=_blank   />
</form>

    $(document).ready(function () {


        $('#submit2').click(function() {
                 $('#itemreport_new').attr('target','_blank');
        });
    });

【讨论】:

    【解决方案4】:
    <?php
    echo "<h1>Hello, PHP!</h1>";
    $name = $_POST['name']; // CONTAIN NAME OF PERSON
    $pass = $_POST['pass']; // ANY DETAIL OF PERSON
    $link = "<script>window.open('https://google.co.in')</script>";
    echo $link;
    

    【讨论】:

    • 您从未使用过链接中的变量。因此它什么也没解释。它应该是这样的: $link = 'google.co.in' 。 '?name='。 $name.'&pass='.$pass;.然后: ?>
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-12-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-27
    • 2014-05-03
    相关资源
    最近更新 更多