ユーザーがインデックス (ホーム) ページにアクセスしようとしたときに、ユーザーをプロファイル ページにリダイレクトする関数を作成しようとしています。POSTデータを使用してログインフォームからこれを正常に実行できましたが、この方法でセッションデータを取得するのに問題があります. Firefox は、サーバーが決して完了しない方法でリダイレクトしていると言っています。
私の一般的な機能に書かれているように、これは私が試したことです:
function logged_in_redirect() {
if (logged_in() === true) {
header('Location: '.$_SESSION['username'].'');
//header('Location: '.$user_data['username'].''); *NEITHER LINE WORKS
exit();
}
}
そして、リダイレクトを追加する私のインデックスページ:
<?php
include 'core/init.php';
logged_in_redirect();
include 'includes/overall/header.php';
?>
<h1>Home</h1>
<p>Just a template.</p>
<?php include 'includes/overall/footer.php'; ?>
ここに私のinitが含まれています:
<?php
ob_start();
session_start();
//error_reporting(0);
require 'database/connect.php';
require 'functions/general.php';
require 'functions/users.php';
if (logged_in() === true) {
$session_user_id = $_SESSION['user_id'];
$user_data = user_data($db, $session_user_id, 'user_id', 'username', 'password', 'first_name', 'last_name', 'email', 'stack_code');
if (user_active($db, $user_data['username']) === false) {
session_destroy();
header('Location: index.php');
exit();
}
}
$errors = array();
?>
iv .htaccess を変更し、プロファイル URL に関する他のすべてが正常に機能しています。このリダイレクトだけで、今日は壁にぶつかっています。ありがとう!