le 11/07/2006 à 21:27
dunbar
Bonjour,
J'aimerais que sur une page de login, je puisse avoir un choix (menu déroulant ou autre) et que suivant le choix l'authentification ce fasse dans telle ou telle base et suivant la base l'utilisateur soit redirigé sur la page 1 ou la page 2.
Mon deuxième problème j'ai créer une TABLE utilisateur avec login, pass, et nom
mais je ne parvient pas à faire une insertion du nom dans une page (exemple bonjour "nom" par contre si je place login à la place du nom cela fonctionne pourquoi ?????.
Voici mon code .
D'avance merci
J'aimerais que sur une page de login, je puisse avoir un choix (menu déroulant ou autre) et que suivant le choix l'authentification ce fasse dans telle ou telle base et suivant la base l'utilisateur soit redirigé sur la page 1 ou la page 2.
Mon deuxième problème j'ai créer une TABLE utilisateur avec login, pass, et nom
mais je ne parvient pas à faire une insertion du nom dans une page (exemple bonjour "nom" par contre si je place login à la place du nom cela fonctionne pourquoi ?????.
Voici mon code .
<?php
// on teste si le visiteur a soumis le formulaire de connexion
if (isset($_POST['connexion']) && $_POST['connexion'] == 'Connexion') {
if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass']))) {
$base = mysql_connect ('localhost', '', '');
mysql_select_db (, $base);
// on teste si une entrée de la base contient ce couple login / pass
$sql = 'SELECT count(*) FROM membre WHERE login="'.addslashes($_POST['login']).'" AND pass_md5="'.md5(addslashes($_POST['pass'])).'"';
$req = mysql_query($sql) or die('Erreur SQL !'.$sql.''.mysql_error());
$data = mysql_fetch_array($req);
mysql_free_result($req);
mysql_close();
// si on obtient une réponse, alors l'utilisateur est un membre
if ($data[0] == 1) {
session_start();
$_SESSION['login'] = $_POST['login'];
header('Location: prestation.php');
exit();
}
// si on ne trouve aucune réponse, le visiteru s'est trompé soit dans son login, soit dans son mot de passe
elseif ($data[0] == 0) {
$erreur = 'Compte non reconnu.';
}
// sinon, alors la, il y a un gros problème :)
else {
$erreur = 'Probème dans la base de données : plusieurs membres ont les mêmes identifiants de connexion.';
}
}
else {
$erreur = 'Au moins un des champs est vide.';
}
}
?>
<html>
<head>
<title>Accueil</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head>
<body background="img/grd-4px.gif">
<p align="center"><font size="6" face="Academy Engraved LET">Identification</font><font face="Algerian" size="6">
</font>:</p>
<p align="center"> </p>
<p align="center">
</p>
<form action="index.php" method="post">
<div align="center">Login :
<input type="text" name="login" value="<?php if (isset($_POST['login'])) echo stripslashes(htmlentities(trim($_POST['login']))); ?>">
Mot de passe :
<input type="password" name="pass" value="<?php if (isset($_POST['pass'])) echo stripslashes(htmlentities(trim($_POST['pass']))); ?>">
</div>
<div align="center">
<input type="submit" name="connexion" value="Connexion">
</div>
</form>
<div align="center">
<?php
if (isset($erreur)) echo '',$erreur;
?>
</div>
</body>
</html>
// on teste si le visiteur a soumis le formulaire de connexion
if (isset($_POST['connexion']) && $_POST['connexion'] == 'Connexion') {
if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass']))) {
$base = mysql_connect ('localhost', '', '');
mysql_select_db (, $base);
// on teste si une entrée de la base contient ce couple login / pass
$sql = 'SELECT count(*) FROM membre WHERE login="'.addslashes($_POST['login']).'" AND pass_md5="'.md5(addslashes($_POST['pass'])).'"';
$req = mysql_query($sql) or die('Erreur SQL !'.$sql.''.mysql_error());
$data = mysql_fetch_array($req);
mysql_free_result($req);
mysql_close();
// si on obtient une réponse, alors l'utilisateur est un membre
if ($data[0] == 1) {
session_start();
$_SESSION['login'] = $_POST['login'];
header('Location: prestation.php');
exit();
}
// si on ne trouve aucune réponse, le visiteru s'est trompé soit dans son login, soit dans son mot de passe
elseif ($data[0] == 0) {
$erreur = 'Compte non reconnu.';
}
// sinon, alors la, il y a un gros problème :)
else {
$erreur = 'Probème dans la base de données : plusieurs membres ont les mêmes identifiants de connexion.';
}
}
else {
$erreur = 'Au moins un des champs est vide.';
}
}
?>
<html>
<head>
<title>Accueil</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head>
<body background="img/grd-4px.gif">
<p align="center"><font size="6" face="Academy Engraved LET">Identification</font><font face="Algerian" size="6">
</font>:</p>
<p align="center"> </p>
<p align="center">
</p>
<form action="index.php" method="post">
<div align="center">Login :
<input type="text" name="login" value="<?php if (isset($_POST['login'])) echo stripslashes(htmlentities(trim($_POST['login']))); ?>">
Mot de passe :
<input type="password" name="pass" value="<?php if (isset($_POST['pass'])) echo stripslashes(htmlentities(trim($_POST['pass']))); ?>">
</div>
<div align="center">
<input type="submit" name="connexion" value="Connexion">
</div>
</form>
<div align="center">
<?php
if (isset($erreur)) echo '',$erreur;
?>
</div>
</body>
</html>
D'avance merci
