Problème d'enregistrement des données

Fermé
MS2I Messages postés 53 Date d'inscription mardi 26 mars 2013 Statut Membre Dernière intervention 5 juillet 2013 - 5 juil. 2013 à 10:19
jeremy.s Messages postés 1226 Date d'inscription lundi 28 mars 2011 Statut Membre Dernière intervention 2 septembre 2013 - 5 juil. 2013 à 15:50
Bonjour
j'ai un problème dans ma page je veux ajouter des users mais quand je remplit le formulaire il m'affiche que l'user il est bien créer par contre quand je veux connecter avec ce user je peux pas comme il pas enrgistré dans ma bd alors c'est problème d'enregistrement et j'arrive pas à le résoudre. est ce que vous pouvez m'aider svp , je conte sur vous. Merci d'avance
Voilà mon code:

<?php
require_once('dbconnect.php');
?>
<?php
if ($_SESSION['authentification'] = TRUE && $_SESSION['privilege'] == "admin"){ // vérification sur la session authentification (la session est elle enregistrée ?)
// On vérifie également si la session ouverte est bien une session admin et on place ici les éventuelles actions en cas de réussite de la connexion
}
else {
header("Location:index.php?erreur=intru"); // redirection en cas d'echec
}
?>
<?php
// ------ AJOUT D'UN UTILISATEUR --------
if(isset($_POST['login'])){ // on vérifie la présence des variables de formulaire
if(($_POST['login'] == "") || ($_POST['pass'] == "")){ // si login ou mot de passe non spécifiés >> message d'erreur
header("Location:admin.php?erreur=empty");
}
else if($_POST['pass'] == $_POST['pass2']){ // on vérifie si le mot de passe et le mot de passe confirmé ont la même valeur
// on passe toutes les variables $POST en variables
$login = $_POST['login'];
$pass = md5($_POST['pass']); // ici, on crypte le mot de passe à l'aide de MD5 (c'est tout simple non ? :)
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
$privilege = $_POST['privilege'];
// on fait l'INSERT dans la base de données
$add_user = "INSERT INTO utilisateurs (login, pass, nom, prenom, privilege) VALUES ('$login', '$pass', '$nom', '$prenom', '$privilege')";
echo $add_user;
echo "Bonjour" ;
//mysql_select_db($database_dbprotect, $dbprotect);
$result = $db->query($add_user);// or die(mysql_error());
header("Location:admin.php?add=ok"); // redirection si création réussie
}
else{
header("Location:admin.php?erreur=pass"); // redirection si le pass1 est différent du pass2
}
}

// ------ SUPPRESSION D'UN UTILISATEUR --------
// on fait la requéte sur tous les utilisateurs de la base pour alimenter notre sélecteur (on fait un tri par nom)
$query_users = "SELECT * FROM utilisateurs ORDER BY nom ASC"; // ORDER BY renvoi les données triées (ici par nom croissant)
//$users = mysql_query($query_users, $db) or die(mysql_error());
$users=$db->query($query_users);
$row_users = mysqli_fetch_assoc($users);
if(isset($_POST['suppr']) && ($_POST['suppr'] != "1")){ // on vérifie la présence des variables de formulaire (si le formulaire a été envoyé)
$id = $_POST['suppr'];
$delete_user = sprintf("DELETE FROM utilisateurs WHERE Id_user='$id'");

//mysql_select_db($database_dbprotect, $dbprotect);
$result = $db->query($delete_user);// or die(mysql_error());
header("Location:admin.php?delete=ok"); // url qui servira pour afficher le message de réussite
}
?>
<html>
<head>
<title>ADMINISTRATION </title>
<link href="styles.css" rel="stylesheet" type="text/css">
</head>
<body>
<form action="" method="post" name="add">
<div class="titre">- : : : ESPACE ADMINISTRATION : : : -</div>
<p align="center">
<?php if(isset($_GET['erreur']) && ($_GET['erreur'] == "pass")) { // Affiche l'erreur ?>
<span class="erreur">Veuillez entrer deux fois votre mot de passe SVP</span>
<?php } ?>
<?php if(isset($_GET['add']) && ($_GET['add'] == "ok")) { // Affiche l'erreur ?>
<span class="reussite">L'utilisateur a été créé avec succès !</span>
<?php } ?>
<?php if(isset($_GET['erreur']) && ($_GET['erreur'] == "empty")) { // Affiche l'erreur ?>
<span class="erreur">Un petit oubli non ? Veuillez renseigner au moins un login et un mot de passe SVP</span>
<?php } ?>
</p>
<p align="center"><strong><u>Créer un utilisateur</u></strong></p>
<table width="350" border="0" align="center" cellpadding="5" cellspacing="0" bgcolor="#eeeeee" class="tableaux">
<tr>
<td width="40">Login</td>
<td width="144"><input name="login" type="text" id="login"></td>
</tr>
<tr>
<td>Mot de passe </td>
<td><input name="pass" type="password" id="pass"></td>
</tr>
<tr>
<td>Répéter mot de passe </td>
<td><input name="pass2" type="password" id="pass2"></td>
</tr>
<tr>
<td>NOM</td>
<td><input name="nom" type="text" id="nom"></td>
</tr>
<tr>
<td>Prénom</td>
<td><input name="prenom" type="text" id="prenom"></td>
</tr>
<tr>
<td>Privilége</td>
<td><select name="privilege" id="privilege">
<option value="user">Utilisateur</option>
<option value="admin">Administrateur</option>
</select></td>
</tr>
<tr>
<td height="50" colspan="2"><div align="center">
<input type="submit" name="Submit" value="Créer cet utilisateur">
</div></td>
</tr>
</table>
</form>

32 réponses

jeremy.s Messages postés 1226 Date d'inscription lundi 28 mars 2011 Statut Membre Dernière intervention 2 septembre 2013 79
5 juil. 2013 à 14:39
sépare déjà le code comme je t'ai dit, on verra après. Reposte les codes de tes deux fichiers ensuite
0
MS2I Messages postés 53 Date d'inscription mardi 26 mars 2013 Statut Membre Dernière intervention 5 juillet 2013
5 juil. 2013 à 14:43
d'accord tu m'attends stp jusqu'à que je le sépare merci d'avance
0
jeremy.s Messages postés 1226 Date d'inscription lundi 28 mars 2011 Statut Membre Dernière intervention 2 septembre 2013 79
5 juil. 2013 à 14:44
Ca marche
0
MS2I Messages postés 53 Date d'inscription mardi 26 mars 2013 Statut Membre Dernière intervention 5 juillet 2013
5 juil. 2013 à 15:07
page admin.php (ajouter user)
<?php
require_once('dbconnect.php');
require_once('header.php');
require_once('record_stat.php');
?>
<?php
if ($_SESSION['authentification'] = TRUE && $_SESSION['privilege'] == "admin"){ // vérification sur la session authentification (la session est elle enregistrée ?)
// On vérifie également si la session ouverte est bien une session admin et on place ici les éventuelles actions en cas de réussite de la connexion
}
else {
header("Location:index.php?erreur=intru"); // redirection en cas d'echec
}
?>
<?php
// ------ AJOUT D'UN UTILISATEUR --------
echo "Bonjour";
if(isset($_POST['login']) && !empty($_POST['login'])){ // on vérifie la présence des variables de formulaire
if(($_POST['login'] == "") || ($_POST['pass'] == "")){ // si login ou mot de passe non spécifiés >> message d'erreur
header("Location:admin.php?erreur=empty");
echo "AMARI";
}


else if($_POST['pass'] == $_POST['pass2']){ // on vérifie si le mot de passe et le mot de passe confirmé ont la même valeur
// on passe toutes les variables $POST en variables
$login = $_POST['login'];
$pass = md5($_POST['pass']); // ici, on crypte le mot de passe à l'aide de MD5 (c'est tout simple non ? :)
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
$privilege = $_POST['privilege'];

// on fait l'INSERT dans la base de données
if(!empty($login) && !empty($pass ) && !empty($nom )&& !empty($prenom )&& !empty($privilege))
{
$add_user = "INSERT INTO utilisateurs(login, pass, nom, prenom, privilege) VALUES ('$login', 'md5($pass)', '$nom', '$prenom', '$privilege')";
echo $add_user;
echo "Bonjour" ;
echo "AMARI";
//mysql_select_db($database_dbprotect, $dbprotect);
$result = $db->query($add_user) or die(mysql_error());
}
header("Location:admin.php?add=ok"); // redirection si création réussie
}
else{
header("Location:admin.php?erreur=pass"); // redirection si le pass1 est différent du pass2
}
}

// ------ SUPPRESSION D'UN UTILISATEUR --------
// on fait la requéte sur tous les utilisateurs de la base pour alimenter notre sélecteur (on fait un tri par nom)
$query_users = "SELECT * FROM utilisateurs ORDER BY nom ASC";
// ORDER BY renvoi les données triées (ici par nom croissant)
//$users = mysql_query($query_users, $db) or die(mysql_error());
$users=$db->query($query_users);
$row_users = mysqli_fetch_assoc($users);
if(isset($_POST['suppr']) && ($_POST['suppr'] != "1")){ // on vérifie la présence des variables de formulaire (si le formulaire a été envoyé)
$id = $_POST['suppr'];
$delete_user = sprintf("DELETE FROM utilisateurs WHERE Id_user='$Id'");

//mysql_select_db($database_dbprotect, $dbprotect);
$result = $db->query($delete_user) or die(mysql_error());
header("Location:admin.php?delete=ok"); // url qui servira pour afficher le message de réussite
}
?>
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
MS2I Messages postés 53 Date d'inscription mardi 26 mars 2013 Statut Membre Dernière intervention 5 juillet 2013
5 juil. 2013 à 15:07
ça le code de formulaire :
<?php
require_once('dbconnect.php');
require_once('header.php');
require_once('record_stat.php');
?>
<html>
<head>
<title>ADMINISTRATION </title>
<link href="styles.css" rel="stylesheet" type="text/css">
</head>
<body>
<form action="admin2.php" method="post" name="add">
<div class="titre">- : : : ESPACE ADMINISTRATION : : : -</div>
<p align="center">
<?php if(isset($_GET['erreur']) && ($_GET['erreur'] == "pass")) { // Affiche l'erreur ?>
<span class="erreur">Veuillez entrer deux fois votre mot de passe SVP</span>
<?php } ?>
<?php if(isset($_GET['add']) && ($_GET['add'] == "ok")) { // Affiche l'erreur ?>
<span class="reussite">L'utilisateur a été créé avec succès !</span>
<?php } ?>
<?php if(isset($_GET['erreur']) && ($_GET['erreur'] == "empty")) { // Affiche l'erreur ?>
<span class="erreur">Un petit oubli non ? Veuillez renseigner au moins un login et un mot de passe SVP</span>
<?php } ?>
</p>
<p align="center"><strong><u>Créer un utilisateur</u></strong></p>
<table width="350" border="0" align="center" cellpadding="5" cellspacing="0" bgcolor="#eeeeee" class="tableaux">
<tr>
<td width="40">Login</td>
<td width="144"><input name="login" type="text" id="login"></td>
</tr>
<tr>
<td>Mot de passe </td>
<td><input name="pass" type="password" id="pass"></td>
</tr>
<tr>
<td>Répéter mot de passe </td>
<td><input name="pass2" type="password" id="pass2"></td>
</tr>
<tr>
<td>NOM</td>
<td><input name="nom" type="text" id="nom"></td>
</tr>
<tr>
<td>Prénom</td>
<td><input name="prenom" type="text" id="prenom"></td>
</tr>
<tr>
<td>Privilége</td>
<td><select name="privilege" id="privilege">
<option value="user">Utilisateur</option>
<option value="admin">Administrateur</option>
</select></td>
</tr>
<tr>
<td height="50" colspan="2"><div align="center">
<input type="submit" name="Submit" value="Créer cet utilisateur">
</div></td>
</tr>
</table>
</form>
<p align="center"><strong>
<?php
if(isset($_GET['delete']) && ($_GET['delete'] == "ok")) { // Affiche l'erreur ?>
<span class="reussite">L'utilisateur a été supprimé avec succés</span>
<?php } ?>
<?php
if(isset($_POST['verif']) && (!isset($_POST['suppr']))) { // Affiche l'erreur ?>
</strong><span class="erreur">Veuillez sélectionner un utilisateur à supprimer </span><strong>
<?php } ?>
<?php
if(isset($_POST['suppr']) && ($_POST['suppr'] == "1")) { // Affiche l'erreur ?>
</strong><span class="erreur">Vous ne pouvez pas supprimer l'utilisateur par défaut toto.<br>
Pour tester la fonction de supression, ajoutez un utilisateur.<br>
Pour sécuriser votre script, il est fortement recommandé de le supprimer manuellement dans votre BDD ... </span><strong>
<?php } ?></strong></p>
<form action="admin2.php" method="post" name="suppr">
<p align="center"><strong><u>Supprimer un utilisateur</u></strong></p>
<div align="center">
<table width="500" border="0" cellpadding="5" cellspacing="0" class="tableaux">
<tr>
<td width="240"><div align="center">
<select name="suppr" size="5" id="select2">
<?php
do {
?>
<option value="<?php echo $row_users['Id_user']?>">
<?php if($row_users['privilege']== "admin") echo ">> "; echo $row_users['nom']." ".$row_users['prenom']." (".$row_users['login'].")"; if($row_users['privilege']== "admin") echo " <<"?>
</option>
<?php
} while ($row_users = mysqli_fetch_assoc($users));
$rows = mysqli_num_rows($users);
if($rows > 0) {
mysqli_data_seek($users, 0);
$row_users = mysqli_fetch_assoc($users);
}
?>
</select>
<input name="verif" type="hidden" id="verif">
</div></td>
<td width="157"><input type="submit" name="Submit2" value="Supprimer cet utilisateur"></td>
</tr>
</table>
<div class="foot"><a href="accueil.php">Retour à l'accueil</a></div>
</div>
</form>
</body>
0
jeremy.s Messages postés 1226 Date d'inscription lundi 28 mars 2011 Statut Membre Dernière intervention 2 septembre 2013 79
5 juil. 2013 à 15:13
Il faut que l'action du formulaire aille sur admin.php, pas sur admin2.php
0
MS2I Messages postés 53 Date d'inscription mardi 26 mars 2013 Statut Membre Dernière intervention 5 juillet 2013
5 juil. 2013 à 15:17
j'ai la corrigé mais tjrs ça marche pas
0
jeremy.s Messages postés 1226 Date d'inscription lundi 28 mars 2011 Statut Membre Dernière intervention 2 septembre 2013 79
5 juil. 2013 à 15:27
Met le code que je t'avais donné pour la partie php, et supprime la suite pour la suppression d'un utilisateur.
Il faut que dans ton fichier php il n'y ai que le code pour ajouter l'utilisateur, rien d'autre.
Pour la suppression refait un autre fichier php et un autre formulaire html

0
MS2I Messages postés 53 Date d'inscription mardi 26 mars 2013 Statut Membre Dernière intervention 5 juillet 2013
5 juil. 2013 à 15:30
tu pense c'est problème de séparation de code ? parce en fait il y a pas des erreurs affiché quand j'insert les données pour créer un nouvelle user.
0
jeremy.s Messages postés 1226 Date d'inscription lundi 28 mars 2011 Statut Membre Dernière intervention 2 septembre 2013 79
5 juil. 2013 à 15:35
Oui, ton systeme est mal fait et mal écrit.
Il faut vraiment que tu fasses ton formulaire pour l'ajout de l'utilisateur, qui appel le code php qui ajoute en bdd et redirige vers une page de menu.
Pareil pour la suppression.

Il a y pleins de tuto sur le net sur la gestion des utilisiteurs sur un site web
Fait un tour le site grafikart, il a quelque tuto la dessus en vidéo qui sont bien fait
0
MS2I Messages postés 53 Date d'inscription mardi 26 mars 2013 Statut Membre Dernière intervention 5 juillet 2013
5 juil. 2013 à 15:46
d'accord je te remercie de m'aider je veux essayer de corriger mon code
0
jeremy.s Messages postés 1226 Date d'inscription lundi 28 mars 2011 Statut Membre Dernière intervention 2 septembre 2013 79
5 juil. 2013 à 15:50
Tu y gagneras plus de tout refaire correctement ;-)
0