PHP $ _SESSION değişkenlere ilişkin Sayı

0 Cevap php

Ben bir oturum açma formu bir veritabanından karma şifreleri kapma var. Eğer bu giriş formu görüntülenir 1'e eşit değilse, o sayfa içeriği ortaya <input type="hidden"> (aşağıda örnek daha bu anlatacağım) 1'e eşittir "kontrol gönderin". Aşağıdaki gibi yapılır:

<div id="login" style="<?php echo $style ?>"> //$style is by default "visibility:visible;" but will change to "visibility:hidden;" when correct login info is given
<p>Log in</p>
<form method="POST" action="<?php echo $_SERVER['PHP_SELF'] ?>">
<input type="text" id ="username" name="username" value="Username" onfocus="if (this.value == 'Username') this.value=''">
<input type="password" id="password" name="password" value="passpass" onfocus="if (this.value == 'passpass') this.value=''">
<br>
<input type="submit" name="submit" value="Log Ind">
<input type="hidden" name="_submit_check" value="1"> //Submit checker. if set, process login information
</form>
</div>
<p>No user? Make one <a href="register.php">here.</a></p>
</div>

Bu benim PHP örneği ile harika çalışıyor ama bir biraz can sıkıcı şey var ... Sen sayfayı görüntülemek her zaman basit bir giriş var. Bu nedenle benim PHP komut dosyası bu yaptım:

<?php

    session_start();

    $db = DB::connect('mysql://username:pass@host/database');
    if (DB::isError($db)){
        die("Can't connect: " . $db->getMessage());
    }
$style = "visibility:visible;";

$passwordHash = sha1($_POST['password']);
$_SESSION['login'] = $_POST['_submit_check']; //This is the submit checker I mentioned before

$sql = 'SELECT username FROM user WHERE username = ? AND passwordHash = ?';
$result = $db->query($sql, array($_POST['username'], $passwordHash));
if ($_SESSION['login'] == 1) {
    if ($result->numRows() < 1)
    {
        echo '<p>Correct your username and password please</p>';
    }
    else {
        $style = "visibility: hidden;";
        echo '<p>This is the page content</p>';
    }
}
?>

Ben 'login' denilen bir $ _SESSION [] değişkeni $ _POST ['_submit_check'] değer katacak gerçeği kullanıcıların sadece her 24 dakika giriş gerektirmeyen yapmak gerekmez mi? Ben istediğim de buydu, ama olmuyor ...

Ben değil, sen anlamıyorsun ne bir yorum bırakın, sorumu anlamak umuyoruz. Ben bu soruya benim düşüncelerimi açıklayan zor bir zaman vardı ;)

0 Cevap