Merhaba kullanıcı giriş yaptıktan sonra kullanıcı adı bilgilerini $_SESSION["kullanici"] alıyorum. Profil sayfasında yazdırdığım zaman göstermiyor.
Giriş Sayfası
<?php
session_start(); //oturum başlattık
include("inc/fonk.php"); //veri tabanına bağlandık
//eğer mevcut oturum varsa sayfayı yönlendiriyoruz.
if (isset($_SESSION["Oturum"]) && $_SESSION["Oturum"] == "6789") {
header("location:index.php");
} //eğer önceden beni hatırla işaretlenmiş ise oturum oluşturup sayfayı yönlendiriyoruz.
else if (isset($_COOKIE["cerez"])) {
//Kullanıcı adlarını çeken sorgumuz
$sorgu = $baglanti->prepare("select kullanici from kullanicilar");
$sorgu->execute();
//Kullanıcı adlarını döngü yardımı ile tek tek elde ediyoruz
while ($sonuc = $sorgu->fetch()) {
//eğer bizim belirlediğimiz yapıya uygun kullanıcı var mı diye bakıyoruz.
if ($_COOKIE["cerez"] == md5("aa" . $sonuc['kullanici'] . "bb")) {
//oturum oluşturma buradaki değerleri güvenlik açısından
//farklı değerler yapabilirsiniz
//aynı zamanda kullanıcı adınıda burada tuttum
$_SESSION["Oturum"] = "6789";
$_SESSION["kullanici"] = $sonuc['kullanici'];
//sonrasında index sayfasına yönlendiriyorum
header("location:index.php");
}
}
}
//Giriş formu doldurulmuşsa kontrol ediyoruz
if ($_POST) {
$txtkullanici = $_POST["txtkullanici"]; //Kullanıcı adını değişkene atadık
$txtParola = $_POST["txtParola"]; //Parolayı değişkene atadık
}
?>
<div class="splash-container">
<div class="card">
<div class="card-header text-center">Login</div>
<div class="card-body">
<form id="form1" method="post">
<div class="form-group">
<div class="form-group">
<input type="text" name="txtkullanici" value='<?php echo @$txtkullanici ?>' id="inputkullanici" class="form-control" placeholder="Kullanıcı Adı" required autofocus>
</div>
</div>
<div class="form-group">
<div class="form-label-group">
<input type="password" id="inputPassword" class="form-control" placeholder="Parola" required name="txtParola">
</div>
</div>
<div class="form-group">
<div class="checkbox">
<label>
<input type="checkbox" ID="ckbHatirla" name="ckbHatirla"/>
Beni hatırla
</label>
<br>
<?php
//Post varsa yani submit yapılmışsa veri tabanından kontrolü yapıyoruz.
if ($_POST) {
//sorguda kullanıcı adını alıp ona karşılık parola var mı diye bakıyoruz.
$sorgu = $baglanti->prepare("select parola from kullanicilar where kullanici=:kullanici");
$sorgu->execute(array('kullanici' => htmlspecialchars($txtkullanici)));
$sonuc = $sorgu->fetch();//sorgu çalıştırılıp veriler alınıyor
//parolaları md5 ile şifreledim ve başına sonuna kendimce eklemeler yaptım.
if (md5("56" . $txtParola . "23") == $sonuc["parola"]) {
$_SESSION["Oturum"] = "6789"; //oturum oluşturma
$_SESSION["kullanici"] = $txtkullanici;
//eğer beni hatırla seçilmiş ise cookie oluşturuyoruz.
//cookie de şifreleyerek kullanıcı adından oluşturdum
if (isset($_POST["ckbHatirla"])) {
setcookie("cerez", md5("aa" . $txtkullanici . "bb"), time() + (60 * 60 * 24 * 7));
}
header("location:index.php"); //sayfa yönlendirme
} else {
//eğer kullanıcı adı ve parola doğru girilmemiş ise
//hata mesajı verdiriyoruz
echo "Kullanıcı adı veya parola yanlış!";
}
}
?>
</div>
</div>
<input type="submit" class="btn btn-primary btn-block" ID="btnGiris" value="Giriş"/>
</form>Profil Sayfası <?php
session_start(); //oturum başlattık
if (!(isset($_SESSION["Oturum"]) && $_SESSION["Oturum"] == "6789")) {
header("location:login.php");
}
$deneme = $_SESSION["kullanici"]; // SESSİON
?>
<!doctype html>
<html lang="tr">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>PDO LOGİN</title>
<body>
Merhaba <?php echo $deneme; ?> // BURAYA YAZDIRDIĞIM ZAMAN GÖSTERMEKTE
</body>
</head>