v2.5.2
Giriş yap

PHP Session başka sayfada kullanamıyorum

Anonim
214 defa görüntülendi ve 1 kişi tarafından değerlendirildi

login.php

<?php
include "../config/cors.php";
include "../config/database.php";

$database = new Database();
$db = $database->getPdo();

if($_SERVER["REQUEST_METHOD"] === 'POST') {

    $data = json_decode(file_get_contents("php://input"), true);

    $userEmail = $data["userEmail"];
    $userPassword = $data["userPassword"];
    
    if(empty($userEmail) || empty($userPassword)) {
        $message = array('error' => "Tüm alanları doldurunuz!");
    }
    else {

        $loginComplete = $db->prepare("SELECT userEmail, userPassword FROM users WHERE userEmail=? and userPassword=?");
        $loginComplete->execute([$userEmail, md5($userPassword)]);
    
        if($loginComplete->rowCount() > 0) {
            session_start();
            $_SESSION['userEmail'] = $userEmail;
            $message = array('success' => "Giriş yapıldı. Yönlendiriliyorsunuz...");
        }
        else {
            $message = array('error' => "Bilgileriniz hatalı, lütfen kontrol ediniz!");
        }
    }

    echo json_encode($message);

}

?>


getUserInfo.php

<?php
session_start();
include "../config/cors.php";
include "../config/database.php";

$database = new Database();
$db = $database->getPdo();

if ($_SERVER["REQUEST_METHOD"] === "GET") {
   if (isset($_SESSION["userEmail"])) {
       echo $_SESSION["userEmail"];
   } else {
       echo "session yok!";
   }
}
?>

React ile bu dosyalara istek atıyorum. Login işlemi sağlandıktan sonra session oluşturuyorum.
getUserInfo.php dosyasına da istek atarak giriş yapan kullanıcının bilgilerini çekmem gerekiyor. Ancak session görünmüyor.

istek61
195 gün önce

session_start();

kullanımdan önce degil sayfanın başında kullanılır.

öncelikle bunu düzeltip deneyin hala sorun yaşıyorsanız

session_set_cookie_params(0, '/members', '.yourdomain.com', 0, 1);
session_start();

yukarıdaki session_set_cookie_params 'ı kendinize göre düzenleyin.

bir sebepte yine siteniz http ile başlayıp https e yönlendiriliyorsa onun içinde olabilir.