$ _SESSION没有开始

时间:2014-12-12 12:42:31

标签: php session cmd

当用户登录时,屏幕上不显示任何内容(错误报告已开启) 这就像$_SESSION不正确?

<?php

 include_once('../includes/connection.php');


 if (isset($_SESSION['logged_in'])) {
 ?>
<html>
 <head>
 <title>wa</title>
 <link rel="stylesheet" type="text/css" href="../assets/stylesheet.css">
 </head>

 <body>
 <div class="container">
 <a href="index.php" id="logo">CMS</a>

 <br />
 <ol>

 <li><a href="add.php">Add Article</a></li>
 <li><a href="delete.php">Delete Article</a></li>
 <li><a href="logout.php">Logout</a></li>

</ol>       
</div>
</body>

</html>



<?php

 } else {

 if (isset($_POST['username'], $_POST['password'])) {
 $username = $_POST['username'];
 $password = md5($_POST['password']);


 if (empty($username) or empty($password)) {
 $error = 'All fields are required!';
 }else {

$query = $pdo->prepare("SELECT * FROM users WHERE user_name = ? AND user_password = 
         ?");

$query->bindValue(1, $username);
$query->bindValue(2, $password);

$query->execute();
$num = $query->rowCount();

 if ($num == 1) {
 $_SESSION['logged_in'] = true;

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

} else{

 $error = 'Incorrect details!';
}
}


}

  ?>
<html>
<head>
 <title>Visuality dashboard</title>
<link rel="stylesheet" type="text/css" href="../assets/stylesheet.css">
</head>

<body>
<div class="container">
<a href="index.php" id="logo">CMS</a>

 <br /><br />

 <?php if (isset($error)) { ?>
 <small style="color:#aa0000;"><?php echo $error; ?>
 <br /><br />
<?php } ?>





<form action="index.php" method="post" autocomplete="off">
<input type="text" name="username" placeholder="något">
<input type="password" name="password" placeholder="något">
<input type="submit" value="Login" />



</div>
</body>

<footer>
</footer>
 </html>

<?php
}






?>

3 个答案:

答案 0 :(得分:1)

你需要调用session_start();在PHP文件的开头。如果您有多个文件,那么将其添加到您的连接文件一次将适用于所有文件。

详细了解PHP中的会话here

答案 1 :(得分:0)

第39行md5$_POST['password']);你错过了“(”

md5($_POST['password']);

答案 2 :(得分:0)

每个具有$ _SESSION变量的php文件都需要包含session_start();在页面顶部。

当页面在加载后出现白屏时,您应该看到php_error_log可能存在语法错误(可能会丢失&#34 ;;&#34;)。 请检查您的代码。 希望它可以帮到你。