/*#include "SAE.h" int ConnexionUtilisateur(void) { char nomUtilisateur[9], motDePasse[11], typeUtilisateur[9]; printf("Veuillez entrer votre nom d'utilisateur : "); scanf("%s", &nomUtilisateur); while(strlen(nomUtilisateur) != 8) { printf("Nom d'utilisateur incorrect. Veuillez recommencer : "); scanf("%s", &nomUtilisateur); } printf("Veuillez entrer votre mot de passe : "); system("stty -echo"); scanf("%s", &motDePasse); system("stty echo"); while(strlen(motDePasse) != 10) { printf("Mot de passe incorrect. Veuillez recommencer : "); system("stty -echo"); scanf("%s", &motDePasse); system("stty echo"); } printf("Connexion réussie en tant qu%s!\n", typeUtilisateur); if(typeUtilisateur == "Admin") { return 1; } else if(typeUtilisateur == "RespAdm") { return 2; } else if(typeUtilisateur == "RespDept") { return 3; } } ListeUtilisateurs chargeUtilisateurs(char *ficUtilisateurs, ListeUtilisateurs Utilisateurs) { FILE *flot; Utilisateur utilisateur; flot = fopen(ficUtilisateurs, "rb"); if(flot == NULL) { printf("Erreur lors de l'ouverture du fichier %s\n", ficUtilisateurs); return 0; } utilisateur = lireUtilisateur(flot); while(!feof(flot)) { Utilisateurs = insererUtilisateur(Utilisateurs, utilisateur); utilisateur = lireUtilisateur(flot); } fclose(flot); return Utilisateur; } Utilisateur lireUtilisateur(FILE *flot) { Utilisateur utilisateur; fread(&utilisateur, sizeof(Utilisateur), 1, flot); return utilisateur; } void afficherUtilisateur(Utilisateur utilisateur) { printf("%s\t%s\n", utilisateur.nomUtilisateur, utilisateur.motDePasse); } void afficherUtilisateurs(ListeUtilisateurs Utilisateurs) { while(! videUtilisateurs(Utilisateurs)) { afficherUtilisateur(Utilisateurs->utilisateur); Utilisateurs = Utilisateurs->suiv; } printf("\n"); } ListeUtilisateurs insererUtilisateur(ListeUtilisateurs Utilisateurs, Utilisateur utilisateur) { ListeUtilisateurs p; p = (ListeUtilisateurs)malloc(sizeof(MaillonUtilisateur)); if(p == NULL) { printf("Opérations interdites !!!!\n"); exit(1); } p->utilisateur = utilisateur; p->suiv = Utilisateurs; return p; } ListeUtilisateurs supprimerUtilisateur(ListeUtilisateurs Utilisateurs, char *nomUtilisateur) { ListeUtilisateurs p, q; if(videUtilisateurs(Utilisateurs)) { printf("Opérations interdites !!!!\n"); exit(1); } if(strcmp(Utilisateurs->utilisateur.nomUtilisateur, nomUtilisateur) == 0) { p = Utilisateurs; Utilisateurs = Utilisateurs->suiv; free(p); return Utilisateurs; } q = Utilisateurs; p = Utilisateurs->suiv; while(p != NULL && strcmp(p->utilisateur.nomUtilisateur, nomUtilisateur) != 0) { q = p; p = p->suiv; } if(p == NULL) { printf("Opérations interdites !!!!\n"); exit(1); } q->suiv = p->suiv; free(p); return Utilisateurs; } int videUtilisateurs(ListeUtilisateurs Utilisateurs) { return Utilisateurs == NULL; } void sauveUtilisateurs(char *ficUtilisateurs, ListeUtilisateurs Utilisateurs) { FILE *flot; flot = fopen(ficUtilisateurs, "wb"); if(flot == NULL) { printf("Erreur lors de l'ouverture du fichier %s\n", ficUtilisateurs); return; } fprintf(flot, "%d\n", nbUtilisateurs); while(! videUtilisateurs(Utilisateurs)) { fwrite(&Utilisateurs->utilisateur, sizeof(Utilisateur), 1, flot); Utilisateurs = Utilisateurs->suiv; } fclose(flot); } int rechercheUtilisateur(ListeUtilisateurs Utilisateurs, char *nomUtilisateur) { while(! videUtilisateurs(Utilisateurs)) { if(strcmp(Utilisateurs->utilisateur.nomUtilisateur, nomUtilisateur) == 0) { return 1; } Utilisateurs = Utilisateurs->suiv; } return 0; } int supprimerUtilisateur(ListeUtilisateurs Utilisateurs, char *nomUtilisateur) { ListeUtilisateurs p, q; if(videUtilisateurs(Utilisateurs)) { printf("Opérations interdites !!!!\n"); exit(1); } if(strcmp(Utilisateurs->utilisateur.nomUtilisateur, nomUtilisateur) == 0) { p = Utilisateurs; Utilisateurs = Utilisateurs->suiv; free(p); return 1; } q = Utilisateurs; p = Utilisateurs->suiv; while(p != NULL && strcmp(p->utilisateur.nomUtilisateur, nomUtilisateur) != 0) { q = p; p = p->suiv; } if(p == NULL) { return 0; } q->suiv = p->suiv; free(p); return 1; } int menuUtilisateurs(ListeUtilisateurs Utilisateurs) { int choix; printf("1. Ajouter un utilisateur\n"); printf("2. Supprimer un utilisateur\n"); printf("3. Afficher la liste des utilisateurs\n"); printf("4. Quitter\n"); printf("Votre choix : "); scanf("%d", &choix); return choix; } void global() { ListeUtilisateurs Utilisateurs; Utilisateurs = chargerUtilisateurs("utilisateurs.bin"); menuUtilisateurs(Utilisateurs); while(choix != 4) { if(choix == 1) { ajouterUtilisateur(Utilisateurs); } elseif(choix == 2) { supprimerUtilisateur(Utilisateurs); } elseif(choix == 3) { afficherUtilisateurs(Utilisateurs); } else { printf("choix impossible\n"); } menuUtilisateurs(Utilisateurs); } sauveUtilisateurs("utilisateurs.bin", Utilisateurs); }*/