【问题标题】:Redirect to another page in PHP after performing form action on same page在同一页面上执行表单操作后重定向到 PHP 中的另一个页面
【发布时间】:2019-10-06 08:09:21
【问题描述】:

所以我的页面为 downloads.php,这就是我的表单所在的位置以及它的表单操作。 downloads.php的内容如下所示

<form method="POST" action="">
<td><button type="submit" name="download" value="<?php echo $g['filename'];?> ">Download</button></td>
</form>
<?php
    if( isset($_POST['download']) ){
        $file = $_POST["download"];


        $sql = "UPDATE files SET downloads=1+downloads WHERE filename ='$file'";
        $conn->query($sql);


    //I want to redirect users to portal after updating my database
        header("Location: portal.php");

    }
?>

我用过header,但我完全不明白为什么它不起作用。

【问题讨论】:

    标签: php forms redirect


    【解决方案1】:

    请注意PHP docs for header() 中的 header() 必须在任何 HTML 输出之前执行。尝试将所有 PHP 代码放在文档的顶部,它应该可以工作

    【讨论】:

      【解决方案2】:

      我找到了一种使用 javascript 的快速方法,那就是

      
          <?php
              if( isset($_POST['download']) ){
                  $file = $_POST["download"];
                  $sql = "UPDATE files SET download=1+download WHERE filename ='$file'";
                  $conn->query($sql);
          ?>
          <script>
          var str1 = 'https://www.example.com/portal.php';
          window.location.href = str1;
          </script>
      
          <?php
          }
          ?>
      
      

      【讨论】:

        猜你喜欢
        • 2022-08-15
        • 1970-01-01
        • 2013-06-14
        • 1970-01-01
        • 1970-01-01
        • 2017-06-08
        • 1970-01-01
        • 2017-04-03
        相关资源
        最近更新 更多