Redirection avec header
Résolu
Zedrof
Messages postés
189
Statut
Membre
-
Zedrof Messages postés 189 Statut Membre -
Zedrof Messages postés 189 Statut Membre -
Bonjour,Est ce quelqu'un pourrait m'aider puisque après mon authentification ça me renvoi a l'index principale mais en voulant me connecte aux autres fichiers ça passe pas du tout vraiment vos aides sont les bienvenues:
<?php
include "config/connexion.php";
include "lib/fonction_date.php";
if(empty($_SESSION['user']))//ce code permet de mettre le fichier login en acceuil au lieu de index
header('Location: //localhost/Parc_informatique/login.php');
echo "Bienvenue <b> ".$_SESSION['user']."</b>";
//le fichier index.php permet de lancer ts les fichiers de l'application
?>
<html>
<head>
<meta http-equiv="content-type"
content="text/html; charset=utf-8"/>
<link href="web/css/style.css" media="screen"
type="text/css" rel="stylesheet"/>
<script src="web/js/jquery.js" type="text/javascript"></script>
<script src="web/js/prototype.js" type="text/javascript"></script>
<script src="web/js/javascript.js" type="text/javascript"></script>
<link rel="stylesheet" href="web/js/jquery-ui.css" />
<script src="web/js/jquery-1.8.3.js"></script>
<script src="web/js/jquery-ui.js"></script>
<link rel="stylesheet" href="/resources/demos/style.css" />
<title> Gestion du Parc Informatique de RMCR</title>
</head>
<body>
<div id="menu"> // declaration des autres fichiers depuis modules
<a href="index.php?page=modules/historique/index.php"><strong>Historique</strong></a>
<a href="index.php?page=modules/mat/index.php"><strong>Materiel Affichage</strong></a>
<a href="index.php?page=modules/user/index.php"><strong>Utilisateur</strong></a>
<a href="index.php?page=modules/departement/index.php"><strong>Departement</strong></a>
</div>
<div id="entete"><img src="web/images/logo2.jpg"width="100px" height="59px"></div>
<div id="corps">
<?php
if (isset($_GET['page'])){
include ($_GET['page']);
}
?>
</div>
<div id="pied"><strong>© RMCR 2014 </strong></div>
</body>
</html>
A voir également:
- Redirection avec header
- Avertissement de redirection ✓ - Forum MacOS
- Avertissement de redirection Google image - Forum Réseaux sociaux
- 400 bad request request header or cookie too large - Forum Windows
- Firfox 3 et option de redirection (désactiver ✓ - Forum Logiciels
- Redirection dangereuse - Forum Virus
22 réponses
j'arrive sur login :
Authentification
user
Mot de Passe
et apres validation
ça m'affiche
Variables POST :
Array
(
[user] => zedrof
[pass] => mariko
)
La Requete est :
SELECT * FROM table_utilisateur
WHERE user = 'zedrof'
AND pass = 'mariko'
( ! ) Fatal error: Call to a member function rowCount() on a non-object in C:\wamp\www\Parc_informatique\session.php on line 37
Call Stack
# Time Memory Function Location
1 0.0021 379032 {main}( ) ..\session.php:0
Authentification
user
Mot de Passe
et apres validation
ça m'affiche
Variables POST :
Array
(
[user] => zedrof
[pass] => mariko
)
La Requete est :
SELECT * FROM table_utilisateur
WHERE user = 'zedrof'
AND pass = 'mariko'
( ! ) Fatal error: Call to a member function rowCount() on a non-object in C:\wamp\www\Parc_informatique\session.php on line 37
Call Stack
# Time Memory Function Location
1 0.0021 379032 {main}( ) ..\session.php:0
login.php
code session.php:
code index.php
<?php
session_start();
include "config/connexion.php";
include "lib/fonction_date.php";
//Recuperation du message d'erreur s'il existe
$msgError = isset($_SESSION['error_login']) ?$_SESSION['error_login']:NULL;
if($msgError){
echo "<div id='zone_message_erreur'>
<pre>".$msgError."</pre>
</div>";
}
?>
<form action= "session.php " method= "POST">
<table align="center" width="300px">
<tr>
<th colspan="2">Authentification</th>
</tr><br/><br/>
<tr>
<td>user</td>
<td><input name="user" type="text"/></td>
</tr><br/><br/>
<td>Mot de Passe</td>
<td><input name="pass" type="password"/></td>
</tr><br/><br/>
<tr>
<td colspan="2">
<input type="submit" value="connexion"/></td>
</tr>
</table>
</form>
code session.php:
<?php
session_start();
include "config/connexion.php";
//--------------------------------------
// Le temps des tests :
//echo "<pre> Variables POST :<br>";
print_r($_POST);
//echo "</pre>";
//--------------------------------------
//********************************//
// Recupération des variables :
//********************************//
$user=isset($_POST['user']) && $_POST['user'] !=''?$_POST['user']:NULL;
$pass=isset($_POST['pass']) && $_POST['pass'] !=''?$_POST['pass']:NULL;
//********************************//
// Préparation de la requete:
//********************************//
$sql = "SELECT * FROM table_utilisateur
WHERE user = '".$user."'
AND pass = '".$pass."'";
//--------------------------------------
// Le temps des tests :
//echo "<pre> La Requete est :<br>";
//echo $sql;
//echo "</pre>";
//--------------------------------------
//********************************//
// Execution de la requete:
//********************************//
$req= $connexion->prepare($sql);
$resultat = $req->execute();
//--------------------------------------
// Le temps des tests :
//echo "<pre>Resultat :<br>";
print_r($resultat);
//echo "</pre>";
//--------------------------------------
$NbRow = $req->fetch(PDO::FETCH_NUM);
//--------------------------------------
// Le temps des tests :
//echo "<pre> NbRows =".$NbRow[0] ."</pre>";
//--------------------------------------
if ($NbRow >=1){
$_SESSION['user']=$user;
unset($_SESSION['error_login']);
//--------------------------------------
// Le temps des tests :
//echo "<pre> Variables de session:<br>";
print_r($_SESSION);
//echo "</pre>";
//--------------------------------------
header('Location: index.php');
exit;
}else{
// destruction des variables de session
session_destroy();
$_SESSION['error_login'] = "Login ou mot de passe incorrect!!!";
//--------------------------------------
// Le temps des tests :
echo "<pre> Variables de session:<br>";
print_r($_SESSION);
echo "</pre>";
//--------------------------------------
header('Location: login.php');
}
?>
code index.php
<?php
session_start();
include "config/connexion.php";
include "lib/fonction_date.php";
//LE TEMPS DES TESTS:
//echo "<pre>Variables de session :<br>";
print_r($_SESSION);
//echo "</pre>";
//----------------
$User = isset($_SESSION['user'])?$_SESSION['user']:NULL;
if(empty($User)) {//ce code permet de mettre le fichier login en acceuil au lieu de index
//LE TEMPS DES TESTS: on desactive cette ligne :
header('Location: login.php');
//echo "<pre> SESSION['user'] est vide ! </pre>";
}
echo "Bienvenue <b> ".$User."</b>";
//le fichier index.php permet de lancer ts les fichiers de l'application
?>
<html>
<head>
<meta http-equiv="content-type"
content="text/html; charset=utf-8"/>
<link href="web/css/style.css" media="screen"
type="text/css" rel="stylesheet"/>
<script src="web/js/jquery.js" type="text/javascript"></script>
<script src="web/js/prototype.js" type="text/javascript"></script>
<script src="web/js/javascript.js" type="text/javascript"></script>
<link rel="stylesheet" href="web/js/jquery-ui.css" />
<script src="web/js/jquery-1.8.3.js"></script>
<script src="web/js/jquery-ui.js"></script>
<link rel="stylesheet" href="/resources/demos/style.css" />
<title> Gestion du Parc Informatique de RMCR</title>
</head>
<body>
<div id="menu">
<a href="index.php?page=modules/historique/index.php">
<strong>Historique</strong>
</a>
<a href="index.php?page=modules/mat/index.php">
<strong>Materiel Affichage</strong>
</a>
<a href="index.php?page=modules/user/index.php">
<strong>Utilisateur</strong>
</a>
<a href="index.php?page=modules/departement/index.php">
<strong>Departement</strong>
</a>
<a>
<a href="deconnexion.php"><strong>Déconnexion</strong></a>
</div>
<div id="entete">
<img src="web/images/logo2.jpg"
width="100px"
height="59px">
</div>
<div id="corps">
<?php
$page = isset($_GET['page'])?$_GET['page']:NULL;
//echo "<br> =>>> Page dans la variable GET = ".$page."<br>";
if ($page){
// on vérifie que la page existe avant d'essayer de l'inclure:
if(file_exists($page)){
include($page);
}else{
echo "Error ! La page ".$page." n'existe pas !";
}
}
?>
</div>
<div id="pied"><strong>© RMCR 2014 </strong></div>
</body>
</html>
<?php session_start(); include "config/connexion.php"; //-------------------------------------- // Le temps des tests : echo "<pre> Variables POST :<br>"; print_r($_POST); echo "</pre>"; //-------------------------------------- //********************************// // Recupération des variables : //********************************// $user=isset($_POST['user']) && $_POST['user'] !=''?$_POST['user']:NULL; $pass=isset($_POST['pass']) && $_POST['pass'] !=''?$_POST['pass']:NULL; //********************************// // Préparation de la requete: //********************************// $sql = "SELECT * FROM table_utilisateur WHERE user = '".$user."' AND pass = '".$pass."'"; //-------------------------------------- // Le temps des tests : echo "<pre> La Requete est :<br>"; echo $sql; echo "</pre>"; //-------------------------------------- //********************************// // Execution de la requete: //********************************// $req= $connexion->prepare($sql); $resultat = $req->execute(); //-------------------------------------- // Le temps des tests : echo "<pre>Resultat :<br>"; print_r($resultat); echo "</pre>"; //-------------------------------------- $NbRow = $resultat->fetch(PDO::FETCH_NUM); //-------------------------------------- // Le temps des tests : echo "<pre> NbRows =".$NbRow[0] ."</pre>"; //-------------------------------------- if ($NbRow >=1){ $_SESSION['user']=$user; unset($_SESSION['error_login']); //-------------------------------------- // Le temps des tests : echo "<pre> Variables de session:<br>"; print_r($_SESSION); echo "</pre>"; //-------------------------------------- //header('Location: index.php'); exit; }else{ // destruction des variables de session session_destroy(); $_SESSION['error_login'] = "Login ou mot de passe incorrect!!!"; //-------------------------------------- // Le temps des tests : echo "<pre> Variables de session:<br>"; print_r($_SESSION); echo "</pre>"; //-------------------------------------- //header('Location: login.php'); } ?>Array
(
[user] => zedrof
[pass] => mariko
)
La Requete est :
SELECT * FROM table_utilisateur
WHERE user = 'zedrof'
AND pass = 'mariko'
Resultat :
1
( ! ) Fatal error: Call to a member function fetch() on a non-object in C:\wamp\www\Parc_informatique\session.php on line 45
Call Stack
# Time Memory Function Location
1 0.0030 379352 {main}( ) ..\session.php:0
Ligne 45 :
A remplacer par :
Array
(
[user] => zedrof
[pass] => mariko
)
La Requete est :
SELECT * FROM table_utilisateur
WHERE user = 'zedrof'
AND pass = 'mariko'
Resultat :
1
NbRows =1
Variables de session:
Array
(
[user] => zedrof
)
Variables POST :
Array
(
[user] => zaertyuiop^sdfghjklm
[pass] => xcfvghjkl:mertgyhjilpm
)
La Requete est :
SELECT * FROM table_utilisateur
WHERE user = 'zaertyuiop^sdfghjklm'
AND pass = 'xcfvghjkl:mertgyhjilpm'
Resultat :
1
NbRows =
Variables de session:
Array
(
[error_login] => Login ou mot de passe incorrect!!!
)