放置标题的最佳位置在哪里("位置:loggedin.php");

时间:2017-04-28 18:51:23

标签: php html mysql

我正在编写库存管理系统。我大部分时间都完成了。这是非常基本的,但是做到了。

所以现在我正在研究它的外观。我在页面顶部的div中放置了一个Searchbox / Query。搜索有效。但它只在列出的页面上显示结果。

我想要做的是在按钮提交时将搜索重定向到此页面,但它无法正常工作。所以我想知道在哪里放置标题("位置:loggedin.php");

我已经在本网站的不同部分工作了,但由于某种原因它不能在这里工作。

<?php

session_start();

if( isset( $_POST['Search'] ) ) {

// build a function to validate data
function validateFormData( $formData ) {
    $formData = trim( stripslashes( htmlspecialchars( $formData ) ) );
    return $formData;
}

$formEmail = validateFormData( $_POST['email'] );

include('connection.php');



$query = "SELECT first_name, last_name, email, card_number, pc_type 
FROM 
profiles WHERE email ='$formEmail'";
$result = mysqli_query( $conn, $query );


if( $formEmail == $email )  {


        session_start();


        $_SESSION['email'] = $email;

        header("Location: profilepage2.php");

    }
}
 mysqli_close($conn);

?>

在这种情况下,我认为HTML不重要,但如果我错了,我会将其发布到编辑中。

2 个答案:

答案 0 :(得分:1)

请记住,在发送任何实际输出之前,必须通过普通HTML标记,文件中的空行或PHP来调用header()。使用include或require,函数或其他文件访问函数读取代码是一个非常常见的错误,并且在调用header()之前输出空格或空行。使用单个PHP / HTML文件时存在同样的问题。

答案 1 :(得分:1)

您可以将标题(“Location:your-url”)放在脚本的任何位置,但应在发送此处http://php.net/manual/en/function.header.php手册中定义的任何输出之前放置。

你需要添加退出;紧接在标题之后非常重要,否则脚本执行将不会终止。

你必须使用喜欢,

header(“Location: loggedin.php”);
exit;

如果重定向不起作用,那么尝试在脚本的第一行添加ob_start,就在下面打开的PHP标记旁边,

<?php ob_start();