arkadaşlar merhaba, sitemde giriş yaptığımda session başlatılıyor ve admin panele yönlendiriliyorum fakat anasayfaya geldiğimde giriş yap yerine admin panele git yazması gerekirken giriş yap yazıyor yani anasayfama session gelmiyor bunu yazdırarak denedim adminde status değerim geliyor fakat indexde gelmiyor. ChatGPT sunucu kaynaklı olabileceğini söylüyor ki önceki hostumda sorunsuz çalışıyordu. Sorun ne olabilir yardımcı olursanız sevinirim
Bu benim headerdeki kodum aşağıda login kodlarım da var
<?php
@session_start();
@$status1=$_SESSION['user_status'];
if (isset($_SESSION['user_username']) || isset($_SESSION['user_status'])) { ?>
<?php
if ($status1 == '3') { ?>
<li class="nav-item border-right border-secondary">
<a class="nav-link text-body small" href="admin/index.php">Yönetici Paneli</a>
</li>
<?php }
elseif ($status1 == '2') { ?>
<li class="nav-item border-right border-secondary">
<a class="nav-link text-body small" href="editor/index.php">Yazar Paneli</a>
</li>
<?php }else{ ?>
<div class="dropdown">
<button class="btn btn-dark dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<i class="fa fa-user"></i>
</button>
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
<a class="dropdown-item" href="uye-paneli">Üye Paneli</a>
<a class="dropdown-item" href="logout.php">Çıkış Yap</a>
</div>
</div>
<?php }
?>
<?php } else { ?>
<li class="nav-item">
<a class="nav-link text-body small" href="giris-yap">Giriş Yap</a>
</li>
<?php }
?>
Login kodlarım
<?php
session_start(); // Oturumu başlat
error_reporting(E_ALL);
ini_set('display_errors', 1);
// Veritabanı bağlantısını yapın (db.php dosyanızı kullanmış gibi varsayıyorum)
include 'db.php';
if ($_SESSION) {
header("Location: anasayfa");
} else {
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$username = $_POST["user_username"];
$password = $_POST["user_password"];
// Kullanıcı adı ve şifreyi kullanarak veritabanında kontrol yapın
$query = $db->prepare("SELECT * FROM user WHERE user_username = :user_username");
$query->bindParam(":user_username", $username);
$query->execute();
if ($query->rowCount() >= 1) {
$row = $query->fetch(PDO::FETCH_ASSOC);
$stored_password = $row["user_password"]; // Veritabanındaki şifre
// Parolayı doğrulama
if (password_verify($password, $stored_password)) {
// Oturum değişkenlerini ayarlayın
$_SESSION["user_id"] = $row["user_id"];
$_SESSION["user_username"] = $row["user_username"];
$_SESSION["user_status"] = $row["user_status"];
$_SESSION['user_id'] = $row['user_id'];
$_SESSION['user_mail'] = $row['user_mail'];
$statu = $_SESSION["user_status"]; // Örnek bir kullanıcı statüsü
// Kullanıcı statüsüne göre yönlendirme yapın
if ($_SESSION["user_status"] == "3") {
header("Location: admin/index.php");
exit;
} elseif ($_SESSION["user_status"] == "2") {
header("Location: editor/anasayfa");
exit;
} else {
header("Location: anasayfa");
exit;
}
} else {
// Şifre yanlış
$error_message = "Kullanıcı adı veya şifre hatalı.";
}
} else {
// Kullanıcı adı bulunamadı
$error_message = "Kullanıcı adı veya şifre hatalı.";
}
}
// Veritabanı bağlantısını kapat
$db = null;
}
?>