重定向到着陆页:标题("位置:index.php");

时间:2018-05-25 11:54:22

标签: php

嗨大家试图找到错误页面而不是改为index.php。

不重定向到着陆页,其他一切正常。

记录从db中删除,页面删除是/否也正常

    <?php
    // Process delete operation after confirmation
    if(isset($_POST["ID"]) && !empty($_POST["ID"])){
        // Include config file
        require_once 'config.php';

        // Prepare a select statement
        $sql = "DELETE FROM cv WHERE ID = ?";

        if($stmt = mysqli_prepare($link,$sql)){
            // Bind variables to the prepared statement as parameters
            mysqli_stmt_bind_param($stmt, "i", $param_ID);

            // Set parameters
            $param_ID = trim($_POST["ID"]);

            // Attempt to execute the prepared statement
            if(mysqli_stmt_execute($stmt)){
                // Records deleted successfully. Redirect to landing page

                header('Location:index.php');
               exit;


            }else{
                echo "Oops! Something went wrong. Please try again later.";
            }
        }

        // Close statement
        mysqli_stmt_close($stmt);

        // Close connection
        mysqli_close($link);
    } else{
        // Check existence of ID parameter
        if(empty(trim($_GET["ID"]))){
            // URL doesn't contain ID parameter. Redirect to error page
            header("location: error.php");
            exit();
        }

    }
   ?>

任何帮助都会很棒。

警告:无法修改标题信息 - 第26行/storage/public_html/crudbd/delete.php已经发送的标题(在/storage/public_html/crudbd/config.php:31开始输出)

1 个答案:

答案 0 :(得分:-2)

只要您回复 ANYTHING ,就会发送HTTP标头,从而无法再发送,导致重定向标头失败。

检查config.php中的echo语句,关闭display_errors,将error_reporting设置为-1,并在终端中尾随日志以确保任何错误日志内容不会导致PHP提前输出。

  

更新

您粘贴了错误。 Warning: Cannot modify header information - headers already sent by (output started at /storage/public_html/crudbd/config.php:31) in /storage/public_html/crudbd/delete.php on line 26

所以,正如我所说,我猜测config.php中有输出是正确的,但它不是回声。

如果您关闭display_errors,它应该有效。通知或警告仍会显示在您的日志中。

了解该行正在发生的事情。如果有一个未定义的变量,例如你没有先用isset()检查,那可能会触发日志输出。