freelance iş ilanları

PHP Session sorunu

2 Mesajlar 295 Okunma
lstbozum
smsonayhizmeti

lutor lutor WM Aracı Kullanıcı
  • Üyelik 05.06.2023
  • Yaş/Cinsiyet 27 / E
  • Meslek öğrenci
  • Konum Karabük
  • Ad Soyad B** B**
  • Mesajlar 6
  • Beğeniler 0 / 0
  • Ticaret 0, (%0)

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;

}

?>

 

 

wmaraci
reklam

Mainersy Mainersy WM Aracı Kullanıcı
  • Üyelik 20.06.2024
  • Yaş/Cinsiyet 21 / E
  • Meslek Software Expertise
  • Konum Eskişehir
  • Ad Soyad O** U**
  • Mesajlar 5
  • Beğeniler 1 / 1
  • Ticaret 0, (%0)

Hocam bu konunun doğru yeri burası değil ki?

 

 

wmaraci
Konuyu toplam 1 kişi okuyor. (0 kullanıcı ve 1 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al