2015-01-26 3 views
-3

는 첫째로 나는 왜이 무엇입니까헤더 정보 세션 쿠키 생성을 수정할 수 없습니까?

.. 이것이 내가 운 PHP는 간단한 만들어진해서는 안하지만하지 바보 인이 같은 ob_functions 공간으로 구글에 모든 노력을 중복되지 않습니다 말씀을 전합니다 내 스크립트에서 쿠키를 시작하기 만하면 오류가 발생합니까? 나는

<!DOCTYPE html> 
<?php 
session_start(); 

?> 


<html lang="en" class="no-js"> 

    <head> 

     <meta charset="utf-8"> 
     <title>Welcome To Spud Gaming</title> 
     <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
     <meta name="description" content=""> 
     <meta name="author" content=""> 

     <!-- CSS --> 
     <link rel='stylesheet' href='http://fonts.googleapis.com/css?family=PT+Sans:400,700'> 
     <link rel="stylesheet" href="assets/css/reset.css"> 
     <link rel="stylesheet" href="assets/css/supersized.css?vvssv"> 
     <link rel="stylesheet" href="assets/css/style.css?v12"> 

     <!-- HTML5 shim, for IE6-8 support of HTML5 elements --> 
     <!--[if lt IE 9]> 
      <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script> 
     <![endif]--> 

    </head> 

    <body> 

<?php 
    require "../core/links.php"; 
    if(isset($_SESSION['user'])) { 
    die; 

    } 

    if(isset($_COOKIE['user'])) { 
    die; 

    } 
    ?> 


     <div class="page-container"> 

     <br><br><br> 
      <h1>Sign In</h1> 
      <div style='color:black;'> 

      <?php 




      if((isset($_POST['username'])) && (isset($_POST['password']))) { 
      require "../core/data_connect.php"; 

      $username = mysqli_real_escape_string($connection,$_POST['username']); 
      $password = mysqli_real_escape_string($connection,(sha1(md5($_POST['password'])))); 

      if(($username) && ($password)){ 

      $login_query_string = "SELECT * FROM spud_members WHERE (username='$username' OR email = '$username') and password='$password'"; 
      $login_query = mysqli_query($connection,$login_query_string); 
      $login_rows = mysqli_num_rows($login_query); 

      $login_array = mysqli_fetch_array($login_query); 
      $mid_login = $login_array['mid']; 
      $active_login = $login_array['active']; 



     //if we found a user with that information then sign them in 
      if($login_rows==1) { 

      //if the user as not been suspended then start there session 
      if($active_login==1) { 

       //if the user has not checked the remember me box 
      if($_POST['start_cookie_true_checked']!='on') { 
      $_SESSION['user']=$mid_login; 
      die; 

      } else if($_POST['start_cookie_true_checked']=='on') { 
      //otherwise if the remember me box has been checked then start a cookie instead 
      $date_of_expiry = time() + 60 ; 

      //THIS COOKIE HAS A ISSUE AND POPS UP THESE ERRORS!!!!!!!!!!!!!!!!!!!!!!!!! 
     setcookie("user", 'Mark', time()+3600); 


      die; 
        } 

      } else { 
      echo "<b>Account Suspended</b><br> 
        Your Account Has Been Suspended:<br> 
        This May Be Because You Have Broken Our Terms Of Use Guidelines<br><br>"; 
        } 


      } else { 

      echo "<b>Invalid Username/Email Or Password</b><br> 
        The Username/Email Or Password That You Supplied Is Invalid<br> 
        Please Try Again or <a href=''> Reset Your Password</a>"; 

      } 

      } else { 

      echo "<b>Blank Username/Email And Password</b><br> 
        You Haven't Entered A Username/Email And Password"; 

      } 

      } 
      ?> 

      </div> 

      <form action='' method='post'> 
      <input type='text' name='username' placeholder='Username Or Email' size='25' maxlength='30' /><br /> 
      <input type='password' name='password' placeholder='Password' size='25' /> 


      <input type='checkbox' name='start_cookie_true_checked'> 


      <input type='hidden' name='action' value='do_login'> 
      <input type='hidden' name='url' value='index.php' /> <br><br> 

      <style> 
      a { 
      color:blue; 
      text-decoration:none; 
      } 
      </style> 


      <div> 
      <a href='signup'> Need An Account? </a> | <a href='forgot'> Forgot Password?</a> 
      </div> 

       <button type="submit">Sign In</button> 

        </form> 












     </div> 

     <!-- Javascript --> 
     <script src="assets/js/jquery-1.8.2.min.js"></script> 
     <script src="assets/js/supersized.3.2.7.min.js"></script> 
     <script src="assets/js/supersized-init.js?ddsddfd"></script> 
     <script src="assets/js/scripts.js"></script> 

    </body> 

</html> 

감사합니다 :)

+0

** A : ** =>''**는 헤더 앞에 ** 출력됩니다. –

답변

0

이동 HTML outpout 후 .. 내가 가진 문제가 발생하고있는 쿠키의 시작을 주석 누군가가 내 시간을 낭비 포기 지금 시도하고 그것을 해결하는 데 도움 수 있기를 바랍니다있다 ~ session_start 기능.

<?php 
session_start(); 
?> 

<!DOCTYPE html> 
0

당신은 (코드의 첫 번째 줄에 시작) 페이지에 출력을하기 시작했다 후 (응답 헤더에서 수행되는) 쿠키를 설정하려고 할 수 없다.

+0

session_start 이후 첫 번째 PHP 태그에서 제대로 작동하므로 코드를 다시 구조화하려고 시도하십시오. PHP가 어떻게 구성되어 있는지 어리석은 짓입니까? – SpudGo

+0

@ SpudGo PHP 문제는 아닙니다. 이것은 HTTP 프로토콜이 작동하는 방식입니다. PHP의 인기가 높지 않고 엄청난 수의 PHP 리소스가 있기 때문에 항상 명확하지는 않습니다. –

+0

예 동의 함 문제를 해결 한 HTML 코드가 렌더링되기 전에 코드를 맨 위에 놓았습니다. 그래서 PHP가 먼저 렌더링되어야하고 일부 기능이 작동하려면 HTML이되어야합니다. 그리고 다시 한 번 감사드립니다;) – SpudGo

관련 문제