行动后重定向,怎么可能?

时间:2015-04-23 21:53:57

标签: php html5

它正在创建新文件,但不会重定向到新页面。为什么以及解决方案或替代方案。谢谢

    <?php 

        $newfile = $_GET['abc'];
        $file = 'example.com.php';
        $url = 'example.com/"$newfile"';

        {if (!copy($file, $newfile)) 
        {


   echo '<script type="text/javascript">';
            echo '<form onsubmit='.$url.'>;</form>;';
            echo '</script>';
            echo '<noscript>';
            echo '<meta http-equiv="refresh" content="0;url='.$url.'" />';
            echo '</noscript>';}
    else{};   };

    ?>

    <form name="form" action="" method="get">
    <input type="text" name="abc" placeholder="Type Here. . .">
    <input type="submit" value="Go">
    </form>``

如果有人想知道我在做什么: 在用户输入上,创建带有输入的页面,并重定向到新形成的页面。 (这些页面是临时的,退出后将被删除)

2 个答案:

答案 0 :(得分:0)

使用这个javascript代替元刷新怎么样?只有在未声明标题的情况下,元刷新才会起作用,这可能是您的问题吗?

<script>
    var newURL =  <?php echo json_encode($url); ?>"; 
    window.location = newURL;
</script>

答案 1 :(得分:0)

您永远不应该接受原始用户输入并直接在文件系统中工作。

此代码应该可以满足您的需求。 您正在将onsubmit和元刷新以及浏览器端代码与服务器端混合使用。

printf("%i", (double)Q);

注意: 最佳做法是在HTTP位置标头中发送完整的网址。我将此代码放在我的localhost上进行测试 - 您需要相应地更改您的网址。

相关问题