Script d'authentification en PHP
Bonsoir,
Tout d'abord bonne fêtes à tous. :)
La partie inscription étant terminé, je m'attaque donc à la partie authentification.
Voilà dans un premier temps ce que j'ai fais.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
| <?php
$erreur = NULL;
if(isset($_POST['connexion_pseudo']) || isset($_POST['connexion_mop'])){
$host = "localhost";
$login = "Jean";
$mdp = "";
$bdd = "xxx";
$pseudo = $_POST['connexion_pseudo'];
$motdepasse = sha1($_POST['connexion_mdp']);
if(empty($pseudo) || empty($motdepasse)){
$erreur = 'Les champs de connexion ne sont pas tous remplis.';
}
else{
$connexion_sql = mysql_connect($host,$login,$mdp);
$connexion_bdd = mysql_select_db($bdd);
if(!$connexion_sql || !$connexion_bdd){
$erreur = 'Connexion impossible avec le serveur distant.';
}
$pseudosql = mysql_real_escape_string($pseudo);
$mdpsql = mysql_real_escape_string($motdepasse);
$result_pseudo = mysql_query('SELECT * FROM membre WHERE pseudo="'.$pseudosql.'"')
or exit(mysql_error());
$nombre_pseudo = mysql_num_rows($result_pseudo);
$result_mdp = mysql_query('SELECT mdp FROM membre WHERE pseudo="'.$pseudosql.'"')
or exit(mysql_error());
if($nombre_pseudo = 0){
$erreur = 'Le pseudo écrit ne correspond à aucun compte.';
}
elseif($result_mdp != $motdepasse){
$erreur = 'Le mot de passe n\'est pas bon.';
}
else{
if(isset($_POST['connexion_checkbox'])){
setcookie("cookieremember",$checkbox,time()+60*60*24*365*100);
}
else{
setcookie("cookieremember","",NULL,"/");
}
session_start();
$_SESSION['pseudo'] = $pseudo;
echo 'Ca fonctionne';
}
}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Index</title>
<link rel="stylesheet" media="screen" type="text/css" title="Design" href="design.css" />
</head>
<body>
<div id="corp"> <!-- Corp de la page -->
<div id="banniere"> <!-- Bannière de la page -->
</div>
<div id="menu"> <!-- Menu horizontal -->
<ul id="onglets"> <!-- Menu horizontal de la page -->
<li class="arrondi"><a href="index.php">Accueil</a></li>
<li><a href="astuces.php">Exposez !</a></li>
<li><a href="forum/index.php">Forum</a></li>
</ul>
</div>
<?php
if(isset($_SESSION['pseudo'])){
?>
<div id="connexion"> <!-- Espace connection de la page -->
<span class="titreconnexion">C'est qui ?</span>
<form method="post">
<label for="connexion_pseudo" style="font:14px calibri" maxlength="16" >Pseudo : <br/></label>
<input type="text" name="connexion_pseudo" /><br /><br />
<label for="connexion_mdp" style="font:14px calibri">Mot de passe : <br /></label>
<input type="password" name="connexion_mdp" /><br />
<a href="#" style="font:11px calibri; text-decoration:none; color:#000;" >Mot de passe oublié ?</a><br /><br/>
<input type="checkbox" name="connexion_checkbox" />
<label for="connexion_checkbox" style="font:14px calibri"> Se souvenir de moi. <br/><br/></label>
<input type="submit" name="connexion_submit" Value="Connexion" /><br /><br/>
<a href="inscription.php" style="font:14px calibri; text-decoration:none; color:#FF9600;"><u>Pas encore inscrit ?</u></a>
<?php
if($erreur != ''){
echo '<span class="erreur">'.$erreur.'</span>';
}
?>
</form>
</div>
<?php
}
else{
echo 'KikooLOL';
}
?>
</div>
</body>
</html>
</html> |
Cependant, quelque chose ne va pas. En effet quand je rentre sur ma page je vois le message "Kikoolol" (oui je sais... :mrgreen:) alors que je n'ai rien renseigné dans le formulaire auparavant. :s
De plus, j'aimerais que vous me donniez vos avis sur ce bout de script. Ce qui pourrait être perfectible etc... ;)
Merci bien. :)