Redirection si non connecté
gesx806
-
Gesx806 -
Gesx806 -
Bonjour,
Je suis en train de créer un espace membre, mais j'ai un petit problème.
Après qu'un membre se soit connecté, il arrive sur une page d'accueil nommée "index.php". Dessus il accède au fil d'actualité de ses amis, etc... Malheureusement, je n'arrive pas à rediriger automatiquement un utilisateur s'il n'est pas connecté et qu'il va sur cette page 'index.php'.
Voici mon script codé en PHP :
<?php
include('config.php')
?>
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Bienvenue sur Spot</title>
<meta name="viewport" content="initial-scale=1.0, minimum-scale=1.0">
<link rel="stylesheet" href="style.css" media="all">
</head>
<body>
<header>
<h3>Où êtes-vous ?</h3>
</header>
<label for="toggle-nav" data-icon="?" title="menu" onclick=""></label>
<input type="checkbox" id="toggle-nav">
<div id="main">
<nav role="navigation" id="navigation">
<ul>
<li><a href="profile.php"><?php if(isset($_SESSION['username'])){echo ' '.htmlentities($_SESSION['username'], ENT_QUOTES, 'UTF-8');} ?></a></li>
<li><a href="#">Profil</a></li>
<li><a href="#">Lieux</a></li>
<li><a href="#">Amis</a></li>
<li><a href="users.php"> Browers</a></li>
<li><a href="deconnexion.php">Déconnexion</a></li>
</ul>
</nav>
<div class="content">
<?php
//On affiche un message de bienvenue, si lutilisateur est connecte, on affiche son pseudo
?>
<br />
<?php
//Si lutilisateur est connecte, on lui donne un lien pour modifier ses informations, pour voir ses messages et un pour se deconnecter
if(isset($_SESSION['username']))
{
?>
<a href="edit_infos.php">Modifier mes informations personnelles</a><br />
}
?>
</body>
</html>
Voilà. Merci à vous !
Guillaume.
Je suis en train de créer un espace membre, mais j'ai un petit problème.
Après qu'un membre se soit connecté, il arrive sur une page d'accueil nommée "index.php". Dessus il accède au fil d'actualité de ses amis, etc... Malheureusement, je n'arrive pas à rediriger automatiquement un utilisateur s'il n'est pas connecté et qu'il va sur cette page 'index.php'.
Voici mon script codé en PHP :
<?php
include('config.php')
?>
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Bienvenue sur Spot</title>
<meta name="viewport" content="initial-scale=1.0, minimum-scale=1.0">
<link rel="stylesheet" href="style.css" media="all">
</head>
<body>
<header>
<h3>Où êtes-vous ?</h3>
</header>
<label for="toggle-nav" data-icon="?" title="menu" onclick=""></label>
<input type="checkbox" id="toggle-nav">
<div id="main">
<nav role="navigation" id="navigation">
<ul>
<li><a href="profile.php"><?php if(isset($_SESSION['username'])){echo ' '.htmlentities($_SESSION['username'], ENT_QUOTES, 'UTF-8');} ?></a></li>
<li><a href="#">Profil</a></li>
<li><a href="#">Lieux</a></li>
<li><a href="#">Amis</a></li>
<li><a href="users.php"> Browers</a></li>
<li><a href="deconnexion.php">Déconnexion</a></li>
</ul>
</nav>
<div class="content">
<?php
//On affiche un message de bienvenue, si lutilisateur est connecte, on affiche son pseudo
?>
<br />
<?php
//Si lutilisateur est connecte, on lui donne un lien pour modifier ses informations, pour voir ses messages et un pour se deconnecter
if(isset($_SESSION['username']))
{
?>
<a href="edit_infos.php">Modifier mes informations personnelles</a><br />
}
?>
</body>
</html>
Voilà. Merci à vous !
Guillaume.
A voir également:
- Redirection si non connecté
- Appareil connecté facebook - Guide
- Comment savoir qui est connecté sur mon wifi - Guide
- Clavier physique non connecté - Guide
- Avertissement de redirection - Forum Réseaux sociaux
- Connecté chromecast - Guide
2 réponses
Tu as déja écrit la solution :)
Quand tu teste si la variable $_SESSION['username'] existe, pourquoi ne pas mettre un else{} qui redirige vers la page que tu veux si l'utilisateur n'est pas connecté ? :)
Quand tu teste si la variable $_SESSION['username'] existe, pourquoi ne pas mettre un else{} qui redirige vers la page que tu veux si l'utilisateur n'est pas connecté ? :)
Merci de ta réponse !
Je suis tout nouveau dans la programmation PHP, et je ne sais pas trop comment faire ce que tu m'as dit... Pourrais-tu me mettre le 'else' sur mon script ? Ce serait vraiment sympa...
En tout cas, merci !
Je suis tout nouveau dans la programmation PHP, et je ne sais pas trop comment faire ce que tu m'as dit... Pourrais-tu me mettre le 'else' sur mon script ? Ce serait vraiment sympa...
En tout cas, merci !
normalement vous avez mis une session pour différez entre un membre connecté et un membre non connecté par exemple $_SESSION['connected']
dans le début de la page index.php :
<?php
session_start();
if(!isset( $_SESSION['connected'])|| $_SESSION['connected'] ==0){
header("location:derige_vers.php");
}
?>
dans le début de la page index.php :
<?php
session_start();
if(!isset( $_SESSION['connected'])|| $_SESSION['connected'] ==0){
header("location:derige_vers.php");
}
?>
<?php
session_start(); //ouverture de session
if(!isset( $_SESSION['connected'])|| $_SESSION['connected'] ==0){ //Si la session n'existe pas ou =0,c'est a dire non connecté
header("location:derige_vers.php"); //il sera redirigé vers la page derige_vers.php
}
?>
//si l'utilisateur est la,c'est a dire qu'il est connecté et peut voir le contenue de la page
session_start(); //ouverture de session
if(!isset( $_SESSION['connected'])|| $_SESSION['connected'] ==0){ //Si la session n'existe pas ou =0,c'est a dire non connecté
header("location:derige_vers.php"); //il sera redirigé vers la page derige_vers.php
}
?>
//si l'utilisateur est la,c'est a dire qu'il est connecté et peut voir le contenue de la page
ok c'est le code de la nouvelle index.php
<?php
session_start();
/*on va testé s'il est connecté une seule fois et c'est ici , pour ne supprimer tout les autres test que vous avez faits*/
if(!isset($_SESSION['username'])) {
/*s'il n'ya pas une session "username" il sera redirigé vers la page de connection*/
header("location:connect.php");
}
include('config.php') ;
?>
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Bienvenue sur Spot</title>
<meta name="viewport" content="initial-scale=1.0, minimum-scale=1.0">
<link rel="stylesheet" href="style.css" media="all">
</head>
<body>
<header>
<h3>Où êtes-vous ?</h3>
</header>
<label for="toggle-nav" data-icon="?" title="menu" onclick=""></label>
<input type="checkbox" id="toggle-nav">
<div id="main">
<nav role="navigation" id="navigation">
<ul>
<li><a href="profile.php">
<?php
echo ' '.htmlentities($_SESSION['username'], ENT_QUOTES, 'UTF-8');
?>
</a></li>
<li><a href="#">Profil</a></li>
<li><a href="#">Lieux</a></li>
<li><a href="#">Amis</a></li>
<li><a href="users.php"> Browers</a></li>
<li><a href="deconnexion.php">Déconnexion</a></li>
</ul>
</nav>
<div class="content">
<?php
echo bienvenue $_SESSION['username'];
?>
<br />
<a href="edit_infos.php">Modifier mes informations personnelles</a><br />
</body>
</html>
<?php
session_start();
/*on va testé s'il est connecté une seule fois et c'est ici , pour ne supprimer tout les autres test que vous avez faits*/
if(!isset($_SESSION['username'])) {
/*s'il n'ya pas une session "username" il sera redirigé vers la page de connection*/
header("location:connect.php");
}
include('config.php') ;
?>
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Bienvenue sur Spot</title>
<meta name="viewport" content="initial-scale=1.0, minimum-scale=1.0">
<link rel="stylesheet" href="style.css" media="all">
</head>
<body>
<header>
<h3>Où êtes-vous ?</h3>
</header>
<label for="toggle-nav" data-icon="?" title="menu" onclick=""></label>
<input type="checkbox" id="toggle-nav">
<div id="main">
<nav role="navigation" id="navigation">
<ul>
<li><a href="profile.php">
<?php
echo ' '.htmlentities($_SESSION['username'], ENT_QUOTES, 'UTF-8');
?>
</a></li>
<li><a href="#">Profil</a></li>
<li><a href="#">Lieux</a></li>
<li><a href="#">Amis</a></li>
<li><a href="users.php"> Browers</a></li>
<li><a href="deconnexion.php">Déconnexion</a></li>
</ul>
</nav>
<div class="content">
<?php
echo bienvenue $_SESSION['username'];
?>
<br />
<a href="edit_infos.php">Modifier mes informations personnelles</a><br />
</body>
</html>