créer un site


Pages protégées par mot de pass

Poster un nouveau sujet sur php   Répondre au sujet à php:Pages protégées par mot de pass    Accueil Forum -> php
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
meo
html mioche
html mioche
MessagePages protégées par mot de pass , Posté le: 02-07-2008 20:49

Bonjour,

je reviens avec un autre soucis. Je suis en train de créer des accès restreint (mot de pass et log) à certaines pages. On me donne un coup de main pour ça mais là y a un bug. Ca marche pourtant pour la personne qui m'aide et on ne trouve pas le problème : vous verrez peut être mieux ?
Donc voici les codes pour la protection d'une page :

Page à protéger (formulaire EnvoyerCV.php):
Code:
<?php
session_start();

if (isset($_SESSION['logged']) && $_SESSION['logged'] === true)
{
?>

<html>
<head>
<title>L'assEAUciation - Enregistrer un CV</title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">

<meta name="GENERATOR" content="Namo WebEditor v6.0">
<link rel="stylesheet" href="nav/style_texte.css">

<meta name="description" content="AssEAUciation ou association du master 2 connaissance, gestion et mise en valeur des espaces aquatiques continentaux, Université Lumière, Lyon 2, délocalisé à mâcon">
<meta name="keywords"content="association, master, eau, milieu aquatique, bienvenue, mise en valeur, gestion, universite, riviere, lac, fleuve">
<meta name="abstract" content=" AssEAUciation du Master 2 Professionnel Connaissance, gestion et mise en valeur des espaces aquatiques continentaux assure la promotion de la formation, l'aide aux étudiants du master pro durant leur séjour à Mâcon, l'aide à l'insertion professionnelle des diplômés, le maintien d'un lien entre les anciens et les nouveaux étudiants, la sensibilisation aux milieux aquatiques.">
<meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
<meta name="language" content="fr">
<meta http-equiv="Content-Language" content="fr">
<meta name="language" content="fr">
<meta http-equiv="Content-Language" content="fr">
<meta name="robots" content="index, follow">
<meta name="revisit-after" content="30 days">
<meta name="reply-to" content="">
<meta name="identifier-url" content="http://www.asseauciation.com">
<meta name="subject" content="AssEAUciation du Master 2 Professionnel Connaissance, gestion et mise en valeur des espaces aquatiques continentaux ">
<meta name="expires" content="never">
<meta name="location" content="France, FRANCE">
<meta name="rating" CONTENT="general">
<meta name="category" content="association">
<meta http-equiv="VW96.OBJECT TYPE" content="Document">

   </head>

   <body bgcolor="#ffffff">
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><b><font size="2" color="blue">Enregistrer son CV & l'assEAUciation</font></b></p>
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><br>
         <br>
      </p>
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;">& Veuillez remplir ce formulaire</p>
         <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;">Les champs accompagn&s d'une * sont obligatoires</p>
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><br>
         <br>
      </p>
      
      <form method="POST" action="envoiecv.php" enctype="multipart/form-data">
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><b>1 - Votre profil</b></p>
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><br>
      </p>
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;">Vous &tes* :</p>
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><input type="radio" name="type" value="Homme" border="0">Un homme</p>
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><input type="radio" name="type" value="Femme" border="0">Une femme</p>
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><br>
      </p>
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;">NOM* <input type="text" name="nom" size="43" border="0"> </p>
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><br>
         Pr&nom* <input type="text" name="prenom" size="40" border="0"></p>
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><br>
         Date de naissance* :</p>
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><input type="text" name="date_naissance" value="JJ/MM/AAAA" size="24" border="0"></p>
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><br>
      </p>
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;">Niveau de formation* :</p>
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><input type="text" name="niveau" value="Bac +" size="69" border="0"></p>
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><br>
      </p>
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;">Dernier dipl&me obtenu* :</p>
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><input type="text" name="diplome" value="Nom du dipl&me et titre" size="69" border="0"></p>
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><br>
      </p>
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;">Vos domaines de comp&tence :</p>
      
         <li class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><input type="checkbox" name="hydro" value="1" border="0">Hydrologie
         <li class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><input type="checkbox" name="eco" value="1" border="0">Ecologie
         <li class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><input type="checkbox" name="assaini" value="1" border="0">Assainissement
         <li class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><input type="checkbox" name="ecosens" value="1" border="0">Ecosensibilisation

         <li class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><input type="checkbox" name="bioveg" value="1" border="0">Biologie v&g&tale

         <li class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><input type="checkbox" name="carto" value="1" border="0">Cartographie

         <li class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><input type="checkbox" name="droit" value="1" border="0">Droit

         <li class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><input type="checkbox" name="gestionter" value="1" border="0">Gestion territoriale
         <li class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><input type="checkbox" name="bioa" value="1" border="0">Biologie animale         <li class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><input type="checkbox" name="geomorpho" value="checkboxValue" border="0">G&omorphologie

         <li class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><input type="checkbox" name="agri" value="1" border="0">Agriculture
         <li class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><input type="checkbox" name="energies" value="1" border="0">Energies
         <li class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><input type="checkbox" name="geol" value="1" border="0">G&ologie
         <li class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><input type="checkbox" name="geo" value="1" border="0">G&ographie
      
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><br>
      </p>
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><br>
      </p>
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><b>2 - Joindre votre CV <u>en format PDF</u></b></p>
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><br>
      </p>
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><input type="file" name="joindre_cv" size="49" border="0"></p>
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><br>
         <br>
      </p>
      
      <p class="Normal" style="text-indent:0; line-height:150%; margin-top:0; margin-right:10pt; margin-bottom:0; margin-left:10pt;">
                  <input type="checkbox" name="actualisation" value="1" border="0">
                  <b><i>En cochant cette case, je souhaite remplacer mon profil <u>d&jà existant</u> sur le site.</i></b><br>
      <div align="center">
      
      <p class="Normal" style="text-indent:0; line-height:150%; margin-top:0; margin-right:10pt; margin-bottom:0; margin-left:10pt;">
                  <input type="checkbox" name="Exactitude" value="1" border="0">
                  <b><i>En envoyant ces informations, j'atteste de leur exactitude.</i></b><br>
      <div align="center">
         <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"><input type="submit" align="center" name="Envoyer" value="Enregistrer votre profil" border="0"></p>
      </div>
      <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"></p>
      </form>
      
   </body>

</html>

<?php

}
else
{
include('adherents_asseauciation.php');
}
?>


Page de connexion (adherents_asseauciation):
Code:

<html>
<head>
  <meta http-equiv="content-type" content="text/html">
  <title>Accès réservé aux adhérents de l'AssEAUciation</title>
</head>

<body>
<form method="post" action="acces_adherents.php">

<p>Login</p> <input type="text" name="nom" size="35" />
<p>Mot de passe</p> <input type="text" name="pass" size="35" />
<input type="submit" value="Envoyer" name="Envoyer" />

</form>


</body>
</html>


Fichier requête (acces_adherents.php):
Code:

<?php
require("config.inc.php");

$connect = mysql_connect($host,$username,$password) or die ("erreur de connexion");
mysql_select_db($bdd_name,$connect) or die ("erreur de connexion base");

$nom = $_POST['nom'];
$pass = $_POST['pass'];

$sql = mysql_query("SELECT COUNT(*) AS nb_nom FROM adherents WHERE nom ='".$nom."'");
//on fait en sorte que ca regarde tous les noms (login) de la table, et on les compte
if (mysql_result($sql,0,'nb_nom') == 1)
{
$requete  = mysql_query("SELECT pass
                  FROM adherents
                  WHERE nom = '$nom'
                  ");
// si il n'y a qu'un nom de sélectionné, on sélectionne le pass pour la vérification de concordance
                        
$donnees = mysql_fetch_array($requete);

   if ($donnees['pass'] == $pass) //si le mot de pass associé est le bon, on connecte la personne avec le nom
   {
      $_SESSION['logged'] = true;
      $_SESSION['nom'] = $nom;

echo '<script language="javascript" type="text/javascript"
<!--
window.location.replace("EnvoyerCV.php");
-->
</script>';
   // et on affiche la page cachée
   }
}
else
{
echo "Désolé, le mot de passe n'est pas le bon";
}

 ?>


Ce formulaire d'envoie de cv est donc protégé et réservé aux adhérents
j'ai bien créé la table adherents, elle a le même nom et elle a bien les attributs nom et pass remplis.
Lorsqu'on tente de se connecter, on retombe sur la page de connexion, la page protégée ne s'affiche pas.

Une idée ?

Merci, bonne soirée
mahdivitche
frontpage mioche
frontpage mioche
MessagePages protégées par mot de pass , Posté le: 27-10-2008 12:53

pour le code de page EnvoyerCV.php

si mieux de faire un test dans debut de la page et de faire un redirection vers la page de connexion

exemple :

Code:
<?php
session_start();
error_reporting(E_ALL ^ E_NOTICE);
if(!session_is_registered("pseudo")){
 echo '<script type="text/javascript">
alert("Erreur dans nom utilisateur ou dans le mot de passe");
document.location.replace("index.php");
</script>';
 }
?>
Montrer les messages depuis:   
Poster un nouveau sujet sur php   Répondre au sujet à php:Pages protégées par mot de pass    Accueil Forum -> php Toutes les heures sont au format GMT + 1 Heure
Page 1 sur 1

 
Sauter vers:  
S'enregistrerS'enregistrer
ProfilProfil
Se connecter pour vérifier ses messages privésSe connecter pour vérifier ses messages privés
RechercherRechercher
Liste des MembresMembres
FAQFAQ
ConnexionConnexion 


© Mentions Légales