странная ошибка PHP - не может объяснить только в заголовке - PullRequest
1 голос
/ 27 марта 2011

открыл этот форум несколько дней назад и до сих пор не достаточно, чтобы внести свой вклад - скоро произойдет, я надеюсь:)

сейчас я испытываю что-то странное, надеюсь, мне кто-нибудь поможет.

В следующем php-коде:

когда я запускаю его и ввожу правильное имя пользователя и пароль, он всегда будет отправлять меня на fail.php, хотя он должен был вернуть результат.

Когда я добавляю случайное «echo» перед предложением if, оно переходит в правильную ветку, но, конечно, больше не может делать заголовок («Location ..)».

У кого-нибудь есть идея, что мне здесь не хватает или почему это происходит? Может ли быть какая-то настройка PHP, о которой я не знаю?

спасибо заранее Себ

(ПРИМЕЧАНИЕ. Я знаю, что php4 не обновлен, инъекции sql и т. Д. - я просто хочу знать и, возможно, понять, почему это происходит;))

<?php

     include("config.php");

    $query = 'select * from users where username = "' . 
            $_POST['username'] . '" and password = "' . 
            md5($_POST['password']) . '"';
    $select_user = mysql_query($query);
    //echo "something";
    if ($select_user && ($row = mysql_fetch_row($select_user)))
    {
            $user_id = $row[0];
        session_start();
        session_register('authorized');
        $_SESSION['authorized'] = true;
        $_SESSION['uid'] = $user_id;
        //echo "anothersomething";
        header("Location: portal.php");
        exit;
    } 
    else 
    {
    $_SESSION['authorized'] = false;
        $_SESSION['uid'] = 0;
        header("Location: failed.php");
        exit;   
    }
    @MYSQL_CLOSE($db); 
?>
...