Validation par administrateur d'une inscription
Résolu/Fermé
Drillan
Messages postés
41
Date d'inscription
dimanche 29 janvier 2012
Statut
Membre
Dernière intervention
3 juin 2015
-
29 avril 2014 à 12:59
Drillan Messages postés 41 Date d'inscription dimanche 29 janvier 2012 Statut Membre Dernière intervention 3 juin 2015 - 23 mai 2014 à 22:40
Drillan Messages postés 41 Date d'inscription dimanche 29 janvier 2012 Statut Membre Dernière intervention 3 juin 2015 - 23 mai 2014 à 22:40
A voir également:
- Validation par administrateur d'une inscription
- Wetransfer gratuit sans inscription - Guide
- Twitter inscription - Guide
- Mot de passe administrateur - Guide
- Instagram inscription gratuite - Guide
- Formater un pc bloqué par administrateur - Guide
6 réponses
Utilisateur anonyme
Modifié par seezer le 29/04/2014 à 13:45
Modifié par seezer le 29/04/2014 à 13:45
Hello,
moi je ferais de la manière suivante :
Page de validation
Affiche à l'administrateur tous les comptes qui ne sont pas encore validé
page : validation.php
1] Vérifie que l'utilisateur courant (celui qui est sur la page) est bien un administrateur
2] Sélectionner les utilisateurs dans la BDD qui ne sont pas actif (SELECT * FROM users WHERE actif=0)
3] Afficher sur ta page html avec un lien <a href="validationscript.php?id=$idutilisateur">valider</a>
Traitement de la validation
Passe un utilisateur inactif en actif
validationscript.php?id=$id
1] Vérifie que l'utilisateur courant (celui qui est sur la page) est bien un administrateur
2] Vérifie que $_GET['id'] est bien un nombre
3] mettre à jour le champ user concerné dans la bdd (UPDATE users SET actif=1 WHERE id=$_GET['id'] AND actif=0)
4] faire une redirection sur validation.php
EDIT : je reste à ta disposition si tu as de plus ample question :)
A+ Seezer
moi je ferais de la manière suivante :
Page de validation
Affiche à l'administrateur tous les comptes qui ne sont pas encore validé
page : validation.php
1] Vérifie que l'utilisateur courant (celui qui est sur la page) est bien un administrateur
2] Sélectionner les utilisateurs dans la BDD qui ne sont pas actif (SELECT * FROM users WHERE actif=0)
3] Afficher sur ta page html avec un lien <a href="validationscript.php?id=$idutilisateur">valider</a>
Traitement de la validation
Passe un utilisateur inactif en actif
validationscript.php?id=$id
1] Vérifie que l'utilisateur courant (celui qui est sur la page) est bien un administrateur
2] Vérifie que $_GET['id'] est bien un nombre
3] mettre à jour le champ user concerné dans la bdd (UPDATE users SET actif=1 WHERE id=$_GET['id'] AND actif=0)
4] faire une redirection sur validation.php
EDIT : je reste à ta disposition si tu as de plus ample question :)
A+ Seezer
Drillan
Messages postés
41
Date d'inscription
dimanche 29 janvier 2012
Statut
Membre
Dernière intervention
3 juin 2015
10
29 avril 2014 à 14:06
29 avril 2014 à 14:06
Bonjour Seezer, merci de ta réponse !
Petite question, je suis en train de modifier le code selon tes conseils, mais comment et où est ce que je met en place de quoi supprimer la personne de la base de données ?
Merci d'avance !
Petite question, je suis en train de modifier le code selon tes conseils, mais comment et où est ce que je met en place de quoi supprimer la personne de la base de données ?
Merci d'avance !
Hello,
- tu peux mettre un deuxième lien à côté de valider <a href="validationdelete.php?id=">supprimer</a>
sauf qu'au lieu de faire un UPDATE tu fais un DELETE * FROM users WHERE id=$_GET['id'] AND actif=0
P.S. du coup je te conseil d'adapter le nom des pages à ta site web (validation.php - validation_accept.php - validation_delete.php) pour que ça te donne quelque chose de logique :)
A+ Seezer
- tu peux mettre un deuxième lien à côté de valider <a href="validationdelete.php?id=">supprimer</a>
sauf qu'au lieu de faire un UPDATE tu fais un DELETE * FROM users WHERE id=$_GET['id'] AND actif=0
P.S. du coup je te conseil d'adapter le nom des pages à ta site web (validation.php - validation_accept.php - validation_delete.php) pour que ça te donne quelque chose de logique :)
A+ Seezer
Drillan
Messages postés
41
Date d'inscription
dimanche 29 janvier 2012
Statut
Membre
Dernière intervention
3 juin 2015
10
Modifié par Drillan le 29/04/2014 à 15:00
Modifié par Drillan le 29/04/2014 à 15:00
Re Seezer, voilà actuellement ce que j'ai répartis sur mes 3 fichiers :
validation.php :
validationscript.php :
suppressionscript.php :
Aurais-je oublié quelque chose ? Sachant que la "protection du dossier" administrateur ne presse pas, je compte mettre tout ça dans un dossier et le site ne sera mit en ligne qu'en Septembre :)
Merci d'avance !
validation.php :
<?php $base = mysql_connect ('localhost', 'root', ''); mysql_select_db ('udccas69', $base); $quete = mysql_query("SELECT * FROM inscrits"); if($quete === FALSE) { die(mysql_error()); // TODO: better error handling } while($validation = mysql_fetch_array($quete)) { echo 'identifiant: '; echo $validation['email']; echo ' Mot de passe: '; echo $validation['passe']; echo '<a href="validationscript.php?id='.$_GET['id'].'">Accepter</a>'; echo '<a href="suppressionscript.php?id='.$_GET['id'].'">Refuser</a>'; echo '<br/>'; } ?>
validationscript.php :
<?php $base = mysql_connect ('localhost', 'root', ''); mysql_select_db ('udccas69', $base); $quete = mysql_query("SELECT * FROM inscrits"); if (is_numeric($_GET['id'])) { mysql_query("UPDATE inscrits SET actif = '1' WHERE id=$_GET[id] AND actif='0'"); header('validation.php'); } else { echo "Problème dans la base de données, contacter l'administrateur au plus vite."; } ?>
suppressionscript.php :
<?php $base = mysql_connect ('localhost', 'root', ''); mysql_select_db ('udccas69', $base); $quete = mysql_query("SELECT * FROM inscrits"); if (is_numeric($_GET['id'])) { mysql_query("DELETE FROM inscrits WHERE id='id'"); header('validation.php'); } else { echo "Problème dans la base de données, contacter l'administrateur au plus vite."; } ?>
Aurais-je oublié quelque chose ? Sachant que la "protection du dossier" administrateur ne presse pas, je compte mettre tout ça dans un dossier et le site ne sera mit en ligne qu'en Septembre :)
Merci d'avance !
1. pour afficher les erreurs de mysql_query j'ai toujours fait comme ça :
2. un petit
3. dans tes 2 requêtes SQL si tes champs id/actif sont des INT, tu peux mettre id=id et actif=0 ou actif=1 (sans les ' ' )
4. dans ta requête SQL DELETE je rajouterais un
mysql_query('requete') or die (mysql_error());ce qui remplacerait ton if (à toi de voir comment tu veux faire) :D
2. un petit
mysql_close($base);à la fin de tes pages.
3. dans tes 2 requêtes SQL si tes champs id/actif sont des INT, tu peux mettre id=id et actif=0 ou actif=1 (sans les ' ' )
4. dans ta requête SQL DELETE je rajouterais un
WHERE id=$_GET['id'] AND actif=0histoire de ne pas supprimer un utilisateur actif (après à toi de voir ce que tu veux faire).
Drillan
Messages postés
41
Date d'inscription
dimanche 29 janvier 2012
Statut
Membre
Dernière intervention
3 juin 2015
10
Modifié par Drillan le 29/04/2014 à 15:30
Modifié par Drillan le 29/04/2014 à 15:30
J'ai pu corriger pour le 2, 3 et 4, mais je ne vois pas de quel "if" tu parles, serait-ce
if (is_numeric($_GET['id']))?
Drillan
Messages postés
41
Date d'inscription
dimanche 29 janvier 2012
Statut
Membre
Dernière intervention
3 juin 2015
10
Modifié par Drillan le 29/04/2014 à 15:54
Modifié par Drillan le 29/04/2014 à 15:54
Ok, c'est corrigé...
Du coup j'ai voulu faire des tests, j'ai voulu supprimer une inscription, ce qui m'a donné une erreur 404 (le lien était le suivant : "http://localhost/projects/Tests/suppressionscript.php?id=" )
Et quand j'ai voulu l'ajouter, ça m'a donné l'erreur : "Problème dans la base de données, contacter l'administrateur au plus vite."
Quelle ironie...
Je pense que j'ai du supprimer quelque chose qu'il ne fallait pas, peut être le
Du coup j'ai voulu faire des tests, j'ai voulu supprimer une inscription, ce qui m'a donné une erreur 404 (le lien était le suivant : "http://localhost/projects/Tests/suppressionscript.php?id=" )
Et quand j'ai voulu l'ajouter, ça m'a donné l'erreur : "Problème dans la base de données, contacter l'administrateur au plus vite."
Quelle ironie...
Je pense que j'ai du supprimer quelque chose qu'il ne fallait pas, peut être le
'id' = $_GET['id'];, que je devrais mettre dans validationscript.php et suppressionscript.php... t'en penses quoi ? ^^'
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Utilisateur anonyme
29 avril 2014 à 16:12
29 avril 2014 à 16:12
"/Tests/suppressionscript.php?id=" il y avait bien un numéro après id= ??
exemple : /Tests/suppressionscript.php?id=12 ?
exemple : /Tests/suppressionscript.php?id=12 ?
Drillan
Messages postés
41
Date d'inscription
dimanche 29 janvier 2012
Statut
Membre
Dernière intervention
3 juin 2015
10
29 avril 2014 à 16:17
29 avril 2014 à 16:17
Non, justement pas, c'est pour ça que je l'ai précisé ! Je suis en train de recréer un autre compte test, parce que je m'aperçois que l'id est égal à 0... Bizarre.
Drillan
Messages postés
41
Date d'inscription
dimanche 29 janvier 2012
Statut
Membre
Dernière intervention
3 juin 2015
10
29 avril 2014 à 16:30
29 avril 2014 à 16:30
Ok donc en fait quand j'ai importé ma table, j'ai oublié le "auto_increment" pour "id", donc évidemment, tout est resté à 0 -_-
Du coup, j'ai recréé une table de données et recréé un compte mais j'ai exactement la même erreur qu'avant...
Du coup, j'ai recréé une table de données et recréé un compte mais j'ai exactement la même erreur qu'avant...
Utilisateur anonyme
23 mai 2014 à 15:38
23 mai 2014 à 15:38
N'hésites pas à passer le sujet en résolu si tel est le cas !
A+ Seezer
A+ Seezer
Drillan
Messages postés
41
Date d'inscription
dimanche 29 janvier 2012
Statut
Membre
Dernière intervention
3 juin 2015
10
23 mai 2014 à 22:40
23 mai 2014 à 22:40
:3