2016-08-05 6 views
-2

사용자를 로깅하는 데 문제가 있습니다. 로그, 세션이 작동하지만 다른 페이지를 클릭하면 세션이 사라지고 작동하지 않으며 기본 페이지와 login.php에 session_start를 넣으면 세션이 이미 실행 중입니다. 몇 가지 아이디어? 당신이 그것으로 값을 넣을 경우 감사사용자를 전체 웹에 로그온 상태로 유지하는 방법

홈페이지 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

보면, 또한 사용자 입력을 살균, 당신은 코드 * "전체 웹의" – sietse85

+1

* 나에게 SQL 인젝션에 취약 보인다 - 응? 당신은 * "전체 웹 사이트"*와 같은 것을 의미합니까? –

+0

또한 * 주석 처리 된 * 코드가 여러 개 있는데 왜 그럴까요? 세션을 사용하여 모든 파일에서 세션을 시작 했습니까? 나는이 모든 것을 아무 것도 입력하지 않기를 바란다. 이와 같은 질문자는 의견을 무시하는 경향이 있으며 사람들은 마법의 답을 듣게됩니다. –

답변

0

당신은 단지 세션을 설정합니다. http://php.net/manual/en/function.setcookie.php에서

$_SESSION["name"]=$value; 
관련 문제