Перенаправить на другую страницу в PHP после выполнения действия формы на той же странице - PullRequest
1 голос
/ 20 мая 2019

Итак, моя страница имеет вид 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, хотя я совершенно озадачен, почему он не работает.

Ответы [ 2 ]

2 голосов
/ 20 мая 2019

Обратите внимание, что в PHP-документации для header () , что header () должна быть выполнена перед выводом любого HTML. Попробуйте поместить весь свой PHP-код вверху документа, и он должен работать

1 голос
/ 20 мая 2019

Я нашел быстрый способ сделать это с помощью 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
    }
    ?>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...