2016-08-05 75 views
-2

我在登錄用戶時遇到問題。當日志,會話工作,但當你點擊到另一個頁面時,會話將消失並且不起作用,並且當我將session_start放到主頁面和login.php時,出現會話已在運行的錯誤。一些想法?由於如何保持用戶登錄到整個網絡

主要page.php文件

<!DOCTYPE html> 
<html> 
    <head> 
     <meta charset="UTF-8"> 
     <meta name="viewport" content="width=device-width"> 
     <link rel="stylesheet" type="text/css" href="css.css"> 
     <link rel="icon" href="favicon.ico"> 
     <title>----</title> 
    </head> 
<body> 

    <!-- HEADER  _____________________________________________________________________________ --      > 
<div id="whiteblock"> 
    <div id="grayblock"> 
     <div id="logo"> 
     </div> 
      <h1>----</h1> 
      <h2>----</h2> 

      <a href="websiteregister.php" id="registration">Registration</a> 

       <?php 
        include "Login.php"; 
        echo $_SESSION["LogiNick"]; 
       ?> 

       <div id="inputposunuti"> 
        <form name="Log" id="Log" method="post"> 
         <label for="Nick" class="inputtext">Nick:</label> 
         <input type="text" name="LogiNick" id="LogiNick" class="input"> <?php echo $EmptyNick; echo $Else; ?> 

         <label for="Pass" class="inputtext">Password:</label> 
         <input type="password" name="LogiPass" id="LogiPass" class="input"> <?php echo $EmptyPass; echo $Else; ?> 

         <input type="submit" name="LogIn" value="⇒"> 
        </form> 

    </div>  
</div> 
<!-- HEADER _____________________________________________________________________________ --> 

<!-- MENU _______________________________________________________________________________ --> 

<div id="pruh"> 
    <div id="search"> 
     <form name="search" method="post"> 
      <input type="text" name="hledat" id="sirka"> 
      <input type="submit" name="subhledat" value="Search!" id="button"> 
     </form> 
    </div> 
     <div id="menutext"> 
      <a href="website.php"> <p>Home</p> </a> 
      <a href="#"> <p>----</p> </a> 
      <a href="#"> <p>----</p> </a> 
      <a href="#"> <p>----</p> </a> 
      <a href="#"> <p>----</p> </a> 
      <a href="#"> <p>----</p> </a> 
     </div> 
</div> 

<!-- MENU _______________________________________________________________________________ --> 

<!-- CONTENT ____________________________________________________________________________ --> 

<!-- CONTENT ____________________________________________________________________________ --> 

<div id="teams"></div> 
</div> 


<p id="creator">Created by</p> 

的login.php

<?php 
    session_start(); 

    include_once "db.php"; 
    global $db; 

     $Else = $EmptyNick = $EmptyPass = $EmptyNick = ""; 

      if ($_SERVER["REQUEST_METHOD"] == "POST") { 

       $LogiNick = $_POST["LogiNick"]; 
       $LogiPass = $_POST["LogiPass"]; 

       if (empty($_POST["LogiNick"])) { 
        $EmptyNick = " - Nick"; 
       } 
       if (empty($_POST["LogiPass"])) { 
        $EmptyPass = " - Password"; 
       } 


      } 

      if(!empty($_POST["LogiNick"]) AND !empty($_POST["LogiPass"])){ 

       $LogiPass = $_POST["LogiPass"]; 
       $SHA = sha1($LogiPass); 

       $sql = "SELECT * FROM WEB_REGISTER WHERE Nick = :nick AND Heslo = :heslo"; 
       $query = $db->prepare($sql); 
       $query->execute(array('nick' => $LogiNick, 'heslo' => $SHA)); 

        $count = $query->rowCount(); 

        if ($count > 0) { 
         $_SESSION["LogiNick"]; 
        } 
      } 
?> 
+0

看看http://php.net/manual/en/function.setcookie.php,也過濾用戶輸入,你的代碼看起來容易受到SQL注入我 – sietse85

+1

*「整個網絡上的」 * - 咦?你的意思更像*「在整個網站上」*,對嗎? –

+0

你也有一堆*註釋*代碼,爲什麼?你是否開始會話,並在所有使用會話的文件?我希望我不會一無所有地打字。像這樣的提問者往往會忽視評論,只是讓人們彈出一個神奇的答案。 –

回答

0

,如果你把一個值的,你只要設置會話。

$_SESSION["name"]=$value;