2015-12-28 84 views
-1

我在本地主机上的工作,并试图创建一个登录系统,但我的会议没有启动,这是我的PHP代码PHP会话没有启动

if(isset($_POST['_submit'])){ 
      session_start(); 
      if(empty($_POST['_email']) || empty($_POST['_password'])){ 
       echo "<script>window.alert('Invalid User EMAIL or PASSWORD!')</script>"; 
      } 
      else{ 

       $email = $_POST['_email']; 
       $password = $_POST['_password']; 

       $select_user = "SELECT email,password FROM signup WHERE email='$email' AND password='$password'"; 
       $query = mysqli_query($conn,$select_user); 
       $rows = mysqli_num_rows($query); 

       if($rows>0){ 
        $_SESSION['user_email'] = $email; 
        header('Location: ../index.php'); 
       } 
       else{ 
        echo "<script>window.alert('Invalid User EMAIL or PASSWORD!')</script>"; 
       } 

      } 
     } 

和会话开始后,我想在HTML代码来改变,这里是我的代码

<?php if(!empty($_SESSION['user_email'])){ ?> 
<li><a href="#">Logout</a></li> 
<?php } else { ?> 
<li><a href="login/index.php">Login</a></li> 
<li><a href="signUp/index.php">Sign Up</a></li> 
<?php } ?> 

这里是登录系统的我的HTML代码

<div class="outside"> 
      <form class="form-horizontal" role="form" method="post"> 
       <div class="form-group"> 
        <label class="control-label col-sm-3 glyphicon glyphicon-user" for="email"></label> 
        <div class="control-label col-sm-8"> 
         <input type="_email" name="_email" class="form-control" id="email" placeholder="Enter Email"> 
        </div> 
       </div> 
       <div class="form-group"> 
        <label class="control-label col-sm-3 glyphicon glyphicon-lock" for="password"></label> 
        <div class="control-label col-sm-8"> 
         <input type="password" name="_password" class="form-control" id="password" placeholder="Enter Password"> 
        </div> 
       </div> 
       <div class="form-group"> 
        <div class="col-sm-offset-3 col-sm-3"> 
         <button name="_submit" type="submit" class="btn btn-default" >Login</button> 
        </div> 
       </div> 
      </form> 
      <p>Not a User? <a href="../signUp/index.php">Sign Up</a></p> 
     </div> 

谢谢,

+0

请张贴您的html代码以及...完成 –

+0

登录系统的html代码? –

+0

是的请...完成 –

回答

2

你还需要在你需要用会话中工作

<?php 
session_start(); 
if(isset($_SESSION['somekey'])) 
{ 
     //code here 
} 
-1

在session_start(启动会话)需要你的if语句之外,通常总是前,任何的PHP代码将执行运行。

session_start(); 
if(isset($_POST['_submit'])){ 

将session_start()放在您想要检查任何会话数据的所有PHP文件的顶部。如果你有一个集中的配置文件,就把它放在那里。

+1

如果语句没有任何反应,我也开始一个会话 –

+0

你的根级index.php文件的顶部是否有session_start?如果它不在那里,你必须把它放在你的index.php文件中。 – Clay

1

<html>标记之前声明session_start()。看看它是否有效。