Nasıl onlar açmış değil ne zaman bir sayfasına erişerek, bir kullanıcı önleyebilir? Onu oturum açma sayfasına yönlendirilmesini istiyorsanız. Ben oturumları ile ilgisi var biliyorum.
Bu gibi çalışır:
Tabii ki, bu hepsi çok, çok basittir. Senin oturumunda, karmaşık bir kullanıcı nesnesi, ya da bir şey tutmak olabilir. İyi şanslar kodlama.
Svetlozar Angelov işaret olarak aşağıdaki kod iyi çalışır:
if (!isset($_SESSION['nID']))
header("Location: login.php");
However.. Bu aslında gerçekten erişmek isteyen kullanıcılar karşı sayfasını güvenli olmaz. Bazı ayarlamalar yapmanız gerekir:
if (!isset($_SESSION['nID']))
{
header("Location: login.php");
die();
}
Bu botlar ve sayfanın içine alma ve sorunlara neden olan tarayıcı başlıklarını görmezden biliyorum savy kullanıcıları engeller. Ayrıca sayfa sayfa kalanını yürütme durdurmak ve kaynak tasarrufu sağlar.
Onun da $ _SESSION ['NiD'] kullanıcı adlarını veya id saklamak için kullandığınız diğer değişken için takas edilebilir olması dikkat çekicidir.
Şu adımları izleyin:
Bir kullanıcı form onun adı ve parola girmesi herkes için erişilebilir bir login.php sayfası oluşturun. Bu form kendini login.php teslim edilmelidir. (Action = 'login.php'). Ayrıca formu ibraz edilmiş ise izler formdaki bir gizli değişken bulunmaktadır.
Gizli değişken ayarlı ise, kullanıcı adı ($_POST['user']
) ve DB varsa kontrol ve şifre kullanıcı adı eşleştiğini. Eğer, böyle bir $ _SESSION değişkeni olarak adını saklamak:
$_SESSION['username'] = $_POST['user'];
Eğer yoksa, bu gibi login.php yeniden yükleyin:
echo 'header("login.php")'; //You should not have echoed anything before this
Şimdi oluşturduğunuz her kullanıcı sayfanın içinde login.php içerir. Böyle bir inbox.php oluşturmak, bir e-posta uygulaması yazarken varsayalım
include ("login.php")
Şimdi, login.php oturum değişken 'kullanıcı' ayarlanmış olup olmadığını kontrol edin ve sadece yetkili kullanıcıların erişimini sağlayacaktır.