2015-04-21 2 views
-2

Я создал форму PHP логин, который отлично работает с помощью XAMPP & PHPMyAdmin,PHP форма Войти вопрос на сервере

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

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /php/index.php:9) in /php/login.php on line 24 

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /php/index.php:9) in /php/login.php on line 24 

Warning: Cannot modify header information - headers already sent by (output started at /php/index.php:9) in /php/login.php on line 28 

у меня есть PHP включены в регистрационную форму на странице index.php

код login.php является ...

<?php include("dbconnect.php"); ?> 

<?php 
if(isset($_POST["submit1"])){ 

if(!empty($_POST['user']) && !empty($_POST['pass'])) { 
    $user=$_POST['user']; 
    $pass=$_POST['pass']; 



    $query=mysql_query("SELECT * FROM login WHERE username='".$user."' AND password='".$pass."'"); 
    $numrows=mysql_num_rows($query); 
    if($numrows!=0) 
    { 
    while($row=mysql_fetch_assoc($query)) 
    { 
    $dbusername=$row['username']; 
    $dbpassword=$row['password']; 
    } 

    if($user == $dbusername && $pass == $dbpassword) 
    { 
    session_start(); 
    $_SESSION['sess_user']=$user; 

    /* Redirect browser */ 
    header("Location: member.php"); 
    } 
    } else { 
    echo "Invalid username or password!"; 
    } 

} else { 
    echo "All fields are required!"; 
} 
} 
?> 

Спасибо

+1

Вы уверены, что это все код этой страницы? Ошибки означают, что ваш вывод что-то (например, 'echo') до строки' session_start() '. –

+0

Добавьте свой код в текст в свой вопрос не как ссылку – Jens

+0

Да, это все на этой странице, у меня есть эта страница, включенная в index.php, у меня также есть еще 5 или 6 различных включений в index.php (если это имеет какое-либо отношение к нему) – DevStacker

ответ

1

использование ob_start() - Включение буферизации вывода

Эта функция включит выход буферизацию. В то время как буферизация вывода активна, никакой вывод не отправляется из сценария (кроме заголовков), вместо этого вывод сохраняется во внутреннем буфере.

+0

где именно на странице я могу это поставить? thanks – DevStacker

+0

'ob_start()' в этом случае не подходит. И это просто скрывает проблему, которая никогда не решает ее. Так как OP также содержит больше файлов в коде. –

+0

после session_start(); –

1

session_start(); должна быть первой строкой вашего файла кода.

<?php 



    if(isset($_POST["submit1"])){ 
    session_start(); 
    include("dbconnect.php"); 

    if(!empty($_POST['user']) && !empty($_POST['pass'])) { 
     $user=$_POST['user']; 
     $pass=$_POST['pass']; 



     $query=mysql_query("SELECT * FROM login WHERE username='".$user."' AND password='".$pass."'"); 
     $numrows=mysql_num_rows($query); 
     if($numrows!=0) 
     { 
     while($row=mysql_fetch_assoc($query)) 
     { 
     $dbusername=$row['username']; 
     $dbpassword=$row['password']; 
     } 

     if($user == $dbusername && $pass == $dbpassword) 
     { 

     $_SESSION['sess_user']=$user; 

     /* Redirect browser */ 
     header("Location: member.php"); 
     } 
     } else { 
     echo "Invalid username or password!"; 
     } 

    } else { 
     echo "All fields are required!"; 
    } 
    } 
+0

Я пробовал это, но он все еще не работает, я получаю те же ошибки, но на этот раз, прежде чем я нажимаю логин, – DevStacker

+0

okay можете ли вы вставить код формы входа в систему и код файла dbconnect. также убедитесь, что не должно быть пробела до начала тега php

+0

Я добавил весь код к этому URL-адресу http://notepad.cc/wieveko89, есть login.php, dbconnect.php & member.php – DevStacker

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