php scrips разрешают только один вход в систему, если я выйду из системы, я не смогу войти снова? - PullRequest
1 голос
/ 11 июля 2011

У меня проблема с логином php скрипта. Скрипты позволяют мне войти на страницу только один раз, после выхода из системы, я не могу войти снова? Я смотрю на это, кажется, хорошо interms синтаксиса, вот пример моего кода

   session_start();
    if(isset($_POST['submit']))//if the user is not logged in see if they have submited log       in data
    {
    $labels = array("username" =>"username", "password" =>"password");
    //connect to the database
    $databaseconnect = mysql_connect($dbConnectParams['DBhost'],
                                         $dbConnectParams['DBuser'],
                                    $dbConnectParams['DBpassword']) or die("could not connect to database server.");
                                    mysql_select_db($dbConnectParams['DBdatabase']) or die("could not connect to the database\n".mysql_error());
    /*collect user entered log-in data from the submited form*/
        $username = mysql_real_escape_string(trim($_POST['username']));
        $password = mysql_real_escape_string(trim($_POST['password']));
        if(!empty($username) && !empty($password)){
        /*
        look up the user name and password  in the database*/
        $query ="select username, password from customer where username ='$username' and password = sha1('$password')";
        $result = mysql_query($query) or die("could not execute select query on ");
            if(mysql_num_rows($result)==1){
                /*
                the log in is ok, username and password exist in database,
                so set the username and password cookies and redirect to home page.
                */
                $row = mysql_fetch_array($result);
                $_SESSION['username'] = $row['username'];
                $_SESSION['password'] = $row['password'];

                setcookie('username', $row['username'], time()+ (60 * 60 ));
                setcookie('password', $row['password'], time()+ (60 * 60) );
                header("Location:../index.php");

                    }

                    }



                elseif(empty($username) && empty($password)){
                    //username and password incorrect , so set the error message
                    $error_msg .= 'sorry username and password required to log in';
                    echo "$error_msg";

                mysql_close($databaseconnect);
                }
                else{
                //username and password incorrect , so set the error message
                    $error_msg .= 'sorry you must enter valid username and password to log in';
                    echo "$error_msg";
                }


        }



    }

1 Ответ

1 голос
/ 11 июля 2011

В сценарии выхода из системы вам необходимо очистить сеанс и файлы cookie.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...