2015-10-23 7 views
1

Я создаю систему входа в систему, мой логин и зарегистрировать скрипт работает нормально, но когда я начал с разрешения страницы он не работает, он продолжает перенаправляется на целевую страницустраница перенаправляет индексировать на входе

index.php

<?php 
    include_once("scripts/global.php"); 
    if($logged == 1){ 
     header("Location:home.php"); 
     exit(); 
    } 
?> 


<!doctype html> 
<html> 
    <head> 
     <meta charset="UTF-8"> 
     <title>Webplex</title> 
     <link href="style1.css" rel="stylesheet" type="text/css"> 
    </head> 
    <body> 
     <div class="container center"> 
     <h1>Webplex</h1> 
      <a href="register.php"><p>Register</p></a> | <a href="login.php"><p>Login</p> </a> 
     </div> 
    </body> 
</html> 

global.php

<?php 
session_start(); 
include("scripts/connect.php"); 

//check the session 
if(isset($_SESSION['username'])){ 
    $session_username = $_SESSION['username']; 
    $session_pass = $_SESSION['pass']; 
    $session_id = $_SESSION['id']; 

    //check member 
    $query = mysql_query("SELECT*FROM members WHERE `id` = '$session_id' AND `password` = '$session_pass' LIMIT 1") or die("could not perform"); 
    $count_count = mysql_num_rows($query); 
    if($count_count > 0){ 
     //logged in stuff here 
     $logged = 1; 
    }else{ 
     $logged = 0; 
     header("Location:logout.php"); 
     exit(); 
    } 
}else if(isset($_COOKIE['id_cookie'])){ 
    $session_id = $_COOKIE['id_cookie']; 
    $session_pass = $_COOKIE['pass_cookie']; 

    //check member 
    $query = mysql_query("SELECT*FROM members WHERE `id` = '$session_id AND `password` = '$session_pass' LIMIT 1")or die("could not perform"); 
    $count_count = mysql_num_rows($query); 
    if($count_count > 0){ 
     while($row= mysql_fetch_array($query)){ 
      $session_username = $row['username']; 
     } 
     //create sessions 
     $_SESSION['username'] = $session_username; 
     $_SESSION['id'] = $session_id; 
     $_SESSION['pass'] = $session_pass; 

     //logged in stuff here 
     $logged = 1; 
    }else{ 
     header("Location:logout.php"); 
     exit(); 
    } 
}else{ 
    //not logged in 
    $logged = 0; 
} 
?> 

home.php

<?php 
    include_once("scripts/global.php"); 
    if($logged == 0){ 
     header("Location:index.php"); 
     exit(); 
    } 
?> 

Я перенаправлены как только войти в систему,

+0

Где код для файла login.php? – Akshay

+0

ваш запрос sql проверяет пароль для вашего идентификатора сеанса, вы должны проверить пароль для введенного имени пользователя вместо – Fanax

+0

Примечание: отступ вашего кода (лучше для отладки), 'mysql_' функции устарел в PHP 5.5.0, и он был удален в PHP 7.0.0. – ChoiZ

ответ

0

Проверка сеанса для этого: -

session_start(); 
if(!isset($_SESSION['username'])){ 
header("Location:home.php"); 
exit(); 
} 
+0

я тебя не понял –

0

Я не знаю, почему вы используете этот код in home.php? Когда $ logged == 1 это означает, что пользователь вошел в систему, и вы перенаправляете на home.php еще раз. Это делает цикл?

if($logged == 1){ 
    header("Location:home.php"); 
    exit(); 
} 
+0

жаль его файл home.php его фактически index.php –

+0

Можете ли вы показать код login.php? – Imvydao

+0

вещь stackoverflow не позволяет мне добавить больше кода –

Смежные вопросы