Redirection avec header

Résolu/Fermé
Zedrof Messages postés 156 Date d'inscription mercredi 27 août 2014 Statut Membre Dernière intervention 9 juin 2022 - Modifié par Zedrof le 15/12/2014 à 13:39
Zedrof Messages postés 156 Date d'inscription mercredi 27 août 2014 Statut Membre Dernière intervention 9 juin 2022 - 17 déc. 2014 à 15:17
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>

 




22 réponses

Zedrof Messages postés 156 Date d'inscription mercredi 27 août 2014 Statut Membre Dernière intervention 9 juin 2022 1
17 déc. 2014 à 11:58
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
0
jordane45 Messages postés 38424 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 février 2025 4 734
Modifié par jordane45 le 17/12/2014 à 12:05
Arf.. je suis un boulet... :-)

<?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');
}
?>

0
Zedrof Messages postés 156 Date d'inscription mercredi 27 août 2014 Statut Membre Dernière intervention 9 juin 2022 1 > jordane45 Messages postés 38424 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 février 2025
17 déc. 2014 à 12:14
Variables POST :
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
0
jordane45 Messages postés 38424 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 février 2025 4 734
17 déc. 2014 à 12:23
Désolé...
Ligne 45 :
$NbRow = $resultat->fetch(PDO::FETCH_NUM);

A remplacer par :

$NbRow = $req->fetch(PDO::FETCH_NUM);
0
Zedrof Messages postés 156 Date d'inscription mercredi 27 août 2014 Statut Membre Dernière intervention 9 juin 2022 1 > jordane45 Messages postés 38424 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 février 2025
17 déc. 2014 à 12:40
Variables POST :
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
)
0
Zedrof Messages postés 156 Date d'inscription mercredi 27 août 2014 Statut Membre Dernière intervention 9 juin 2022 1 > Zedrof Messages postés 156 Date d'inscription mercredi 27 août 2014 Statut Membre Dernière intervention 9 juin 2022
17 déc. 2014 à 12:41
avec mauvais login et mot de passe

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!!!
)
0
Zedrof Messages postés 156 Date d'inscription mercredi 27 août 2014 Statut Membre Dernière intervention 9 juin 2022 1
17 déc. 2014 à 14:45
login.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>
0
jordane45 Messages postés 38424 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 février 2025 4 734
17 déc. 2014 à 14:49
Fichier : session.php => Ligne 8 / Ligne 41 / Ligne 51 / Lignes 66 à 70
Fichier : index.php => Ligne 8
0
Zedrof Messages postés 156 Date d'inscription mercredi 27 août 2014 Statut Membre Dernière intervention 9 juin 2022 1 > jordane45 Messages postés 38424 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 février 2025
17 déc. 2014 à 14:52
desactive les print
0
jordane45 Messages postés 38424 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 février 2025 4 734 > Zedrof Messages postés 156 Date d'inscription mercredi 27 août 2014 Statut Membre Dernière intervention 9 juin 2022
17 déc. 2014 à 14:55
Tu me demandes de désactiver les PRINT ?
Tu ne peux pas le faire toi même ????
Je t'ai donné les Numéros de lignes où les trouver ......
0
Zedrof Messages postés 156 Date d'inscription mercredi 27 août 2014 Statut Membre Dernière intervention 9 juin 2022 1 > jordane45 Messages postés 38424 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 février 2025
Modifié par Zedrof le 17/12/2014 à 15:18
sayer s'est fait et ça marche et vraiment merci
0