web-dev-qa-db-fra.com

Remarque: Variable non définie: _SESSION dans "" sur la ligne 9

Voici mon code php:

<?php include("inc/incfiles/header.inc.php")?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Member Index</title>
<link href="css/main.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>Welcome <?php echo ($_SESSION['SESS_fname']);?></h1>
<a href="member-profile.php">My Profile</a> | <a href="logout.php">Logout</a>
<p>This is a password protected area only accessible to members. </p>
</body>
</html>

Je sais que je me trompe avec le code, mais je ne sais pas comment le corriger. Mon erreur indique: "Remarque: variable non définie: _SESSION dans C:\xampp\htdocs\Smasher\member-index.php sur la ligne 9"

Comment puis-je corriger l'erreur pour qu'elle indique le prénom de l'utilisateur? Le premier nom de la table de base de données sur mySQL est appelé fname.

18
user2203600

Ajouter

session_start();

au début de votre page avant tout HTML

Vous aurez quelque chose comme:

<?php session_start();
include("inc/incfiles/header.inc.php")?>
<html>
<head>
<meta http-equiv="Content-Type" conte...

N'oubliez pas de supprimer l'espace dont vous disposez avant

37
Yassir Ennazk

Tout d'abord, vous devrez ajouter session_start() en haut de la page sur laquelle vous souhaitez utiliser les variables SESSION.

Vous devez également vérifier que la variable est définie en premier avant de l'utiliser:

if(isset($_SESSION['SESS_fname'])){
    echo $_SESSION['SESS_fname'];
}

Ou simplement:

echo (isset($_SESSION['SESS_fname']) ? $_SESSION['SESS_fname'] : "Visitor");
3