Etablir la connexion

Fermé
mohamedlam Messages postés 6 Date d'inscription dimanche 15 janvier 2012 Statut Membre Dernière intervention 1 juin 2013 - 21 mai 2013 à 16:24
mohamedlam Messages postés 6 Date d'inscription dimanche 15 janvier 2012 Statut Membre Dernière intervention 1 juin 2013 - 1 juin 2013 à 12:44
Bonjour,
Je suis entrain de realiser une application de gestion de stage et j'ai un formulaire d'établissement de connexion dans le quel peut se connecter l'admin et meme un stagiaire inscrit le prob que mon code lors de l'exécution ne fait pas la diffirence entre un admin et un stagiaire et il m'envoi la meme page normalement lors de la connexion si l'utilisateur qui va se connecter il envoie dans une page si un stagiaire il doit l'envoyer ds une autre voila le code



<?php
session_start();
if (isset($_POST['email']))
{
echo "bnr";
$email=htmlspecialchars(trim($_POST['email']));
$passe=htmlspecialchars(trim($_POST['passe']));
if ($email&&$passe)
{

$passe=md5($passe);
$connect=mysql_connect('localhost','root','');
mysql_select_db('stage');
$log=mysql_query("SELECT * FROM stagiaire WHERE (email='$email'AND passe='$passe');");
$rows=mysql_num_rows($log);
if($rows==0)
{

$_SESSION['email']=$email;
header('Location:alae.php');

}
else
{

$con=mysql_query("SELECT * FROM admin WHERE (email='$email'AND passe='$passe');");
$row=mysql_num_rows($con);
if($row==0)
{
$_SESSION['email']=$email;
header('Location:tab.php');

}

}
}

}

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!-- saved from url=(0044)http://stagiaires.ma/signup/intern/package/9 -->
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<!---[if lt IE 9]-->
<title>Formulaire Stagiaire</title> <link href="./styles/bootstrap.min.css" media="screen" rel="stylesheet" type="text/css">
<link href="./styles/jquery-ui-1.8.23.custom.css" media="screen" rel="stylesheet" type="text/css">
<link href="./styles/jquery.fancybox.css" media="screen" rel="stylesheet" type="text/css">
<link href="./styles/style.css" media="screen" rel="stylesheet" type="text/css">
</head>
<body class="default_index_signupintern" >
<div class="modal" id="myModal" aria-hidden="true">
<div class="modal-header">
<div class="container" id="wrapper">
<div class="row">
<div class="span9">

<form class=" form-horizontal" action="" method="post">
<div class="control-group">
<div class="controls">
<input type="hidden" name="id" value="" class="" id="id"></div>
<fieldset id="fieldset-company_infos">
<legend>Veuillez Se Connectez</legend>

<div class="control-group">
<label for="email" class="control-label required">E-mail</label>
<div class="controls">
<input type="text" name="email" id="email" value="" placeholder="Votre@dresse.fr"class="" required></div>
</div>

<div class="control-group">
<label for="password" class="control-label required">Mot de passe</label>
<div class="controls">
<input type="password" name="passe" id="password" value="" class="" required></div>
</div>
</fieldset>
<div class="control-group">
<div class="controls">
<button type="sumbit" class="btn btn-success">Connexion</button>
<button type="reset" class="btn" >Clear</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
<div class="modal-footer">
<a href="formulaire index.html">Insciption</a>
<button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
</div>
<script src="js/bootstrap.js" ></script>

</body>
</html>





A voir également:

3 réponses

jeremy.s Messages postés 1226 Date d'inscription lundi 28 mars 2011 Statut Membre Dernière intervention 2 septembre 2013 79
21 mai 2013 à 17:00
Salut !

Ca redirige sur quelle page ? celle du stagière ou celle de l'admin ?
0
Salut,

Pour commencer tu fait un "echo" à la ligne 3 qui va te provoquer l'erreur suivante pour les redirections :
Cannot modify header information - headers already sent
Tu ne dois envoyer aucun affichage (code html ou echo) avant les instructions header.

Ensuite la fonction htmlspecialchars doit être utilisée afficher des données en html, non pas comme filtres sur tes entrées. Il n'est pas donc pas utile d'utiliser cette fonction à cet endroit.
Par contre puisque tu utilises tes entrées ($_POST['email'] et $_POST['passe']) dans une requête sql, tu doit utiliser la fonction mysql_real_escape_string pour éviter les injections sql.
Une petite recherche sur ton moteur de recherche favoris te permettra d'avoir plus d'infos sur ces deux fonctions.

Enfin si un stagiaire utilise le même couple email/passe qu'un admin, l'administrateur ne pourra jamais se connecter.

Voila quelques remarques te permettant d'avancer.

Bon courage.
0
mohamedlam Messages postés 6 Date d'inscription dimanche 15 janvier 2012 Statut Membre Dernière intervention 1 juin 2013
1 juin 2013 à 12:44
Merci bien à vous la connexion a été bien établie le problème a été à partir de la bd
0