vincent801566668
Messages postés49Date d'inscriptionmardi 1 décembre 2009StatutMembreDernière intervention 5 septembre 2018
-
Modifié le 5 sept. 2018 à 11:54
vincent801566668
Messages postés49Date d'inscriptionmardi 1 décembre 2009StatutMembreDernière intervention 5 septembre 2018
-
5 sept. 2018 à 12:13
Bonjour,
J'ai pour but de faire un mini projet en php mais j'avoue que je suis perdu.
projet pour qu'un administrateur puisse voir la liste des comptes (admin ou non) et modifier ou supprimer un en particulier via deux boutons à côté des détails de chaque compte :
- Création de la page gestioncomptes.php (en PJ) accessible depuis la page welcome.php une fois connecté en tant qu'administrateur => formulaire avec 2 boutons modifier et supprimer pour chaque compte et un champ hidden permettant de passer le login du compte à modifier ou à supprimer à la page compte.php
- Modifier la page gestioncomptes.php pour aller sur la page compte.php (pour rappel, attribut "action" de la balise <form>) en méthode post
- Modifier la page compte.php pour gérer les cas modifier et supprimer un compte depuis la page gestioncomptes.php (test d'action sur un des 2 boutons grâce à isset($_POST['actionCompte'] && $_POST['actionCompte'] == "Modifier" ou isset($_POST['actionCompte'] && $_POST['actionCompte'] == "Supprimer" ) => utiliser le code déjà existant de modification et de suppression, initialiser le formulaire avec les valeurs du compte à modifier ($_POST au lieu de $_SESSION) si on arrive depuis la page gestioncomptes.php. Dans le cas de la suppression, rediriger vers la page gestioncomptes.php plutôt que connexion.php
<?phpinclude('fonctions.php');?><html><head><title>Gestion des comptes</title><meta http-equiv="content-type" content="text/html; charset=utf-8"/></head><body><br/><?php// ouverture connexion$connection=connexionSQL();// execution de la requête $res=getGerants($connection);// si faux retourné, erreur lors de l'exécution de la requête// et nous arrêtons le scriptif(!$res){die("Erreur de récupération de la liste des comptes en BD");}echo'<table><tr><td>ID</td><td>LOGIN</td><td>NOM</td><td>PRENOM</td><td>EMAIL</td><td>ISADMIN</td></tr>';// Affichage des lignes que nous transformerons en liste de cases à cocher...while($gerant=$res->fetch_assoc()){echo'<tr><form method="get"><td>'.$gerant['ID'].'</td>';echo'<td>'.$gerant['LOGIN'].'</td>';echo'<td>'.$gerant['NOM'].'</td>';echo'<td>'.$gerant['PRENOM'].'</td>';echo'<td>'.$gerant['EMAIL'].'</td>';echo'<td>'.$gerant['ISADMIN'].'</td>';echo'<td><input type="hidden" name="login" value="'.$gerant['LOGIN'].'"></td>';echo'<td><input type="submit" name="actionCompte" value="Modifier"></td>';echo'<td><input type="submit" name="actionCompte" value="Supprimer"></td></form></tr>';}echo'</table>';$connection->close();?></body></html>
compte php :
<?phpinclude('fonctions.php');session_start();if(isset($_POST['supprimer_compte'])){$requete="DELETE FROM GERANT WHERE LOGIN='".$_SESSION['login']."'";echo$requete."<br/>";$connexion=connexionSQL();$res=executerRequete($connexion,$requete);if(!$res){echo"Erreur lors de la suppression de votre compte<br/>";$connexion->close();}else{$connexion->close();deconnect();header('Location: ./connexion.php');}}echo"Id session = ".session_id()."<br/>";echo"<pre>";print_r($_SESSION);echo"</pre>";if(isset($_POST['creer_compte'])){$connexion=connexionSQL();$res=getGerant($connexion,$_POST['login']);if($res->num_rows >0){echo'Login déjà utilisé, veuillez en choisir un autre';$res->close();$connexion->close();}else{if($_POST['mdp']==$_POST['confirm_mdp']){$requete="INSERT INTO GERANT(ID,LOGIN,NOM,PRENOM,EMAIL,MDP) VALUES(NULL,'".$_POST['login']."','".$_POST['nom']."','".$_POST['prenom']."','".$_POST['email']."','".$_POST['mdp']."')";echo$requete."<br/>";$res=executerRequete($connexion,$requete);if(!$res){echo"Erreur lors de la création de votre compte<br/>";$connexion->close();}else{$_SESSION['login']=$_POST['login'];$_SESSION['nom']=$_POST['nom'];$_SESSION['prenom']=$_POST['prenom'];$_SESSION['email']=$_POST['email'];$connexion->close();header('Location: ./welcome.php');}}else{echo"Les mots de passe ne correspondent pas<br/>";}}}if(isset($_POST['modifier_compte'])){if($_POST['mdp']==$_POST['confirm_mdp']){$requete="UPDATE GERANT SET NOM='".$_POST['nom']."', PRENOM='".$_POST['prenom']."', EMAIL='".$_POST['email']."', MDP='".$_POST['mdp']."' WHERE LOGIN='".$_SESSION['login']."'";echo$requete."<br/>";$connexion=connexionSQL();$res=executerRequete($connexion,$requete);if(!$res){echo"Erreur lors de la modification de votre compte<br/>";$connexion->close();}else{$_SESSION['nom']=$_POST['nom'];$_SESSION['prenom']=$_POST['prenom'];$_SESSION['email']=$_POST['email'];$connexion->close();echo"Mise à jour prise en compte<br/>";}}else{echo"Les mots de passe ne correspondent pas<br/>";}}?><!DOCTYPE html><html><head><title>Structures - mon compte</title><meta charset="UTF-8"></head><body><form method="post"><table><tr><td>Login</td><td><input required type="text" name="login" value="<?php valueInputType("login"); echo '"'; if (isset($_SESSION['login'])) { echo ' disabled'; } ?>> </td> </tr> <tr> <td>Nom</td> <td><input required type="text" name="nom" value="<?php valueInputType("nom"); ?>"> </td> </tr> <tr> <td>Prénom</td> <td><input required type="text" name="prenom" value="<?php valueInputType("prenom"); ?>"> </td> </tr> <tr> <td>Email</td> <td><input required type="email" name="email" value="<?php valueInputType("email"); ?>"> </td> </tr> <tr> <td>Mot de passe</td> <td> <input required type="password" name="mdp" value=""> </td> </tr> <tr> <td>Confirmation mot de passe</td> <td> <input required type="password" name="confirm_mdp" value=""> </td> </tr> </table> <?php if (!isset($_SESSION['login'])) echo '<input type="submit" name="creer_compte" value="Créer">'; else { echo '<input type="submit" name="modifier_compte" value="Modifier">'; echo '<input type="submit" name="supprimer_compte" value="Supprimer">'; echo '<br/><a href="deconnexion.php">Me déconnecter</a>'; } ?> </form> <?php ?> </body></html>
2 - Tu nous décris ce que tu souhaites obtenir et ce que tu as commencé à faire..... mais je n'ai pas vu ni de question ni d'explication d'un éventuel souci....
Pourrais tu nous expliquer en détail ce qui "coince" et/ou ce-dont tu as besoin ?
vincent801566668
Messages postés49Date d'inscriptionmardi 1 décembre 2009StatutMembreDernière intervention 5 septembre 20183 5 sept. 2018 à 12:13
Bonjour,
merci pour votre aide et d'avoir modifier mon post c'est très gentil
5 sept. 2018 à 12:13
merci pour votre aide et d'avoir modifier mon post c'est très gentil
Cordialement