2015-10-08 6 views
1

У меня проблема с перенаправлением страницы в php.Почему эта страница не перенаправляется?

<?php   
     include '../include/dbfunctions.php'; 
     $email = $password = ""; 
     $err = ""; 
     if ($_SERVER["REQUEST_METHOD"] == "POST") { 
      if (isset($_POST['login']) && !empty($_POST['password'])) { 

       $email = trim($_POST['email']); 
       $password = trim($_POST['password']); 

       $link = get_db_connection(); 


       if (mysqli_connect_errno()) { 
        die(" Something went wrong ! "); 
       } 

       $user_email = mysqli_real_escape_string($link, $email); 
       $user_password = mysqli_real_escape_string($link, $password); 

       $query = "SELECT username FROM user WHERE user_email = '$user_email' AND user_password = SHA1('$user_password') AND user_active = '1';"; 
       $data = mysqli_query($link, $query); 

       if (mysqli_num_rows($data) == 1) { 

        $row = mysqli_fetch_array($data); 

        $username = $row['username']; 
        mysqli_close($link); 
        if (!empty($username)) { 

         header('location:http://www.xxxxxxxxxxxxxx.be/login/dashboard.php'); 
         exit(); 
        } 
       } else { 
        $err = "Invalid combination of e-mail and password"; 
        echo $err; 
       } 
      } else { 

      } 
     } 
     ?> 

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

+0

это потому, что вы используете нижний регистр «L» в месте, как это 'заголовок ('Location:. ...' Если нет, что URL вы получаете в браузере – jitendrapurohit

+0

Сначала проверьте, прежде чем заголовок ничего? является echo и использует 'Location:' вот так. –

+0

Забавно, что он отлично работает в Netbeans, но не в сети ??? –

ответ

0
if (!empty($username)) { 
       header('location:http://www.xxxxxxxxxxxxxx.be/login/dashboard.php'); 
        exit();} 

$username может быть пустым.

+0

Это означает, что запрос не имел результата? Но это было. Я проверил это. if (mysqli_num_rows ($ data) == 1) { –

+0

Затем удалите конец php-тега в dbfunctions.php, иногда он создает проблему. http://stackoverflow.com/questions/4410704/why-would-one-omit-the-close-tag –

+0

Позвольте мне знать, как только проблема будет решена. –

0
if (!empty($username)) { 
    header('location:http://www.yoursite.be/login/dashboard.php?error=error in login please try agine'); 
    exit(); 
} 
Смежные вопросы