Accueil > > > ANNUAIRE 1.0
ANNUAIRE 1.0
Information sur la source
Description
Annuaire 1.0 a été créé par : - zal3a ( majdiesprit@hotmail.fr ) - nadfrslw ( nadfrslw@hotmail.fr ) Etudiants à ESPRIT, tunisie 2008/2009 Ceci est notre première application en C et ça a été pour un projet en C. On espère encore avancer dans la programmation Toutes vos remarques sont les bienvenues. A bientot pour notre prochaine création ... ;) Zal3a
Source
- //***************************************************
- // Annuaire 1.0 *
- //***************************************************
- // *
- // Annuaire 1.0 a été créé par : *
- // - zal3a ( majdiesprit@hotmail.fr ) *
- // - nadfrslw ( nadfrslw@hotmail.fr ) *
- // Etudiants à ESPRIT, tunisie 2008/2009 *
- // *
- // Ceci est notre première application en C *
- // et ça a été pour un projet en C. *
- // On espère encore avancer dans la programmation *
- // Toutes vos remarques sont les bienvenues. *
- // A bientot pour notre prochaine création ... ;) *
- // *
- // Zal3a *
- // *
- //***************************************************
- // Remarques : *
- //***************************************************
- // *
- // Annuaire 1.0 a été créé en langage C *
- // Il nécessite quelques modifications afin de *
- // l'améliorer, malheureusement par manque *
- // de temps et vu les circonstances ( fin du délai *
- // du projet ) ... *
- // *
- // On peut citer par exemple : *
- // - Modification de la fonction d'identification *
- // pour ne plus avoir à copier le fichier *
- // "Sessions.txt" sur c:\\ *
- // *
- // - L'ajout d'un controle sur les saisis pour *
- // éviter tout disfonctionnement *
- // *
- // - L'ajout d'une interface graphique *
- // *
- //***************************************************
-
-
-
-
-
- //**********************************
- // Déclaration des Bibliothèques *
- //**********************************
-
- #include <stdio.h>
- #include <conio.h>
- #include <string.h>
- #include <stdlib.h>
-
- //****************************************
- // Déclaration des Fonctions utilisées *
- //****************************************
- void Reset(void);
- void Menu(void);
- int Menu_admin(void);
- int Menu_user(void);
- int Nb_Contacts(void);
- void Affiche_Session(void);
- void Affiche_Session1(void);
- void Modifier_Session(void);
- void Modifier_Session1(void);
- int Login(void);
- void Config_admin(void);
- void Config_user(void);
- void Supprimer(void);
- int Modif_Champ(void);
- void Modifier(void);
- void Ajouter(void);
- void Afficher(void);
- void Rechercher(void);
- void Quitter(void);
-
-
- //***************************************************************************
- //** Déclaration de la Structure contenant les informations d'un contact *
- //***************************************************************************
-
- struct Fiche
- {
- char nom[30];
- char prenom[30];
- char mail[30];
- char adresse[100];
- char num_dom[15];
- char num_travail[15];
- char num_fax[15];
- char num_portable1[15];
- char num_portable2[15];
- char ville[10];
- int groupe;
- };
-
- //*****************************************************************************
- //** Déclaration de la Structure contenant les comptes d'accés du programme *
- //*****************************************************************************
-
- struct Session
- {
- char login[10];
- char password[10];
- char login1[10];
- char password1[10];
- };
-
-
- //********************************************
- //** Fonction qui réinitialise le fichier *
- //********************************************
-
- void Reset(void)
- {
- char chemin[]="C:\\liste.txt";
- remove(chemin);
- printf("\n\nFichier reinitialise ...");
- getch();
- }
-
- //*************************************************************
- //** Fonction qui permet l'affichage du menu Administrateur *
- //*************************************************************
-
- int Menu_admin(void)
- {
- int choix;
- printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
- printf("\n\t\xBA Menu Accueil \xBA");
- printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
- printf("\n\n[1] Ajouter un nouveau contact");
- printf("\n[2] Rechercher un contact");
- printf("\n[3] Lister les contacts ");
- printf("\n[4] Modifier un contact");
- printf("\n[5] Supprimer un contact");
- printf("\n[6] Acceder au panneau de configuration de Annuaire 1.0");
- printf("\n\n[0] Quitter le programme");
- printf("\n\nVeuillez indiquer votre choix : ");
- scanf("%d",&choix);
- return choix;
- }
-
-
- //*************************************************************
- //** Fonction qui permet l'affichage du menu Utilisateur *
- //*************************************************************
-
- int Menu_user(void)
- {
- int choix;
- printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
- printf("\n\t\xBA Menu Accueil \xBA");
- printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
- printf("\n\n[1] Rechercher un contact");
- printf("\n[2] Lister les contacts ");
- printf("\n\n[3] Acceder au panneau de configuration de Annuaire 1.0");
- printf("\n\n[0] Quitter le programme");
- printf("\n\nVeuillez indiquer votre choix : ");
- scanf("%d",&choix);
- return choix;
- }
-
-
- //****************************************************************
- //** Fonction qui affiche le nombre de contacts sur le fichier *
- //****************************************************************
- int Nb_Contacts(void)
- {
- int i=0;
- char chemin[]="C:\\liste.txt";
- struct Fiche F;
- FILE *f;
- f=fopen(chemin,"rb");
- if(f==NULL)
- {
- printf("\n\n Le fichier %s est introuvable ...",chemin);
- }
- else
- {
- while(fread(&F,sizeof(struct Fiche),1,f)!=0)
- {
- i++;
- }
-
- }
- fclose(f);
- return i;
- }
-
-
- //**************************************************************
- // Fonction qui permet d'afficher le compte Administrateur *
- //**************************************************************
-
- void Affiche_Session(void)
- {
- struct Session S;
- FILE *h;
- char chemin[]="c:\\Sessions.txt";
- h=fopen(chemin,"rb");
- if(h==NULL)
- {
- printf("\n\n Le fichier %s est introuvable ...",chemin);
- }
- else
- {
- printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
- printf("\n\t\xBA Compte d'acces \xBA");
- printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
- while(fread(&S,sizeof(struct Session),1,h)!=0)
- {
- printf("\n\nLogin Administrateur : %s",S.login);
- printf("\nMot de passe Administrateur : %s",S.password);
- getch();
- }
- }
- fclose(h);
- }
-
- //**************************************************************
- // Fonction qui permet d'afficher le compte Utilisateur *
- //**************************************************************
-
- void Affiche_Session1(void)
- {
- struct Session S;
- FILE *h;
- char chemin[]="c:\\Sessions.txt";
- h=fopen(chemin,"rb");
- if(h==NULL)
- {
- printf("\n\n Le fichier %s est introuvable ...",chemin);
- }
- else
- {
- printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
- printf("\n\t\xBA Compte d'acces \xBA");
- printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
- while(fread(&S,sizeof(struct Session),1,h)!=0)
- {
- printf("\n\nLogin Utilisateur : %s",S.login1);
- printf("\nMot de passe Utilisateur : %s",S.password1);
- getch();
- }
- }
- fclose(h);
- }
-
- //***************************************************************
- //** Fonction qui permet de modifier le compte Administrateur *
- //***************************************************************
-
- void Modifier_Session(void)
- {
- struct Session S;
- FILE *h;
- FILE *g;
- char chemin[]="c:\\Sessions.txt";
- char chemin1[]="c:\\temp_sessions.txt";
- h=fopen(chemin,"rb");
- g=fopen(chemin1,"wb");
- if(h==NULL)
- {
- printf("\n\n Le fichier %s est introuvable ...",chemin);
- }
- else
- {
- if(g==NULL)
- {
- printf("\n\n Impossible d'ouvrir le fichier %s",chemin1);
- }
- else
- {
- while(fread(&S,sizeof(struct Session),1,h)!=0)
- {
- printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
- printf("\n\t\xBA Compte d'acces \xBA");
- printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
- fflush(stdin);
- printf("\n\nVeuillez saisir le nouveau Login Administrateur : ");
- gets(S.login);
- fflush(stdin);
- printf("\nVeuillez saisir le nouveau Mot de Passe Administrateur : ");
- gets(S.password);
- fwrite(&S,sizeof(struct Session),1,g);
- }
- }
- }
- fclose(h);
- remove(chemin);
- fclose(g);
- rename(chemin1,chemin);
- }
-
-
- //***************************************************************
- //** Fonction qui permet de modifier le compte Utilisateur *
- //***************************************************************
-
- void Modifier_Session1(void)
- {
- struct Session S;
- FILE *h;
- FILE *g;
- char chemin[]="c:\\Sessions.txt";
- char chemin1[]="c:\\temp_sessions.txt";
- h=fopen(chemin,"rb");
- g=fopen(chemin1,"wb");
- if(h==NULL)
- {
- printf("\n Impossible d'ouvrir le fichier %s",chemin);
- }
- else
- {
- if(g==NULL)
- {
- printf("\n Impossible d'ouvrir le fichier %s",chemin1);
- }
- else
- {
- while(fread(&S,sizeof(struct Session),1,h)!=0)
- {
- printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
- printf("\n\t\xBA Compte d'acces \xBA");
- printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
- fflush(stdin);
- printf("\n\nVeuillez saisir le nouveau Login Utilisateur : ");
- gets(S.login1);
- fflush(stdin);
- printf("\nVeuillez saisir le nouveau Mot de Passe Utilisateur : ");
- gets(S.password1);
- fwrite(&S,sizeof(struct Session),1,g);
- }
- }
- }
- fclose(h);
- remove(chemin);
- fclose(g);
- rename(chemin1,chemin);
- }
-
-
- //***********************************************************
- //** Fonction qui permet l'identification de l'utilisateur *
- //***********************************************************
-
- int Login(void)
- {
- int s;
- FILE *h;
- char log_in[10];
- char pass[10];
- struct Session S;
- char chemin[]="c:\\Sessions.txt";
- printf("ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»");
- printf("º Annee Universitaire 2008 / 2009 º");
- printf("ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹");
- printf("º *** *** **** * * ***** ***** º");
- printf("º * * * * * * * * * * º");
- printf("º * * * * * ** * * * º");
- printf("º * * * **** * * * *** * º");
- printf("º * ***** * * * ** * * º");
- printf("º * * * * * * * * * * º");
- printf("º *** * * * * * * ***** * º");
- printf("º º");
- printf("º **** ** *** **** **** ***** *** *** ***** º");
- printf("º * * ** * * * * * * * * * * * * º");
- printf("º * * * * * * * * * ** ** * º");
- printf("º * * * * * * **** *** ** ** *** º");
- printf("º * * ***** * * * * * ** ** * º");
- printf("º * * * * * * * * * * * * * * º");
- printf("º **** * * **** * * ***** *** *** ***** º");
- printf("ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹");
- printf("º Cree par : º");
- printf("º * Zal3a majdiesprit@hotmail.fr ESPRIT º");
- printf("º * Nadfrslw nadfrslw@hotmail.fr Tunisie º");
- printf("º º");
- printf("ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ");
- system("pause");
- clrscr();
- h=fopen(chemin,"rb");
- if(h==NULL)
- {
- printf("\n Impossible d'ouvrir le fichier %s",chemin);
- }
- else
- {
- while(fread(&S,sizeof(struct Session),1,h)!=0)
- {
- printf("\n\tSoyez le(la) bienvenu(e) \x85 notre Annuaire 1.0 .");
- printf("\n\tCe programme a ete cree par zal3a et nadfrslw.\n");
- printf("\n\n\n\tVeuillez vous identifier ...\n");
- do
- {
- printf("\tEntrez un login valide : ");
- gets(log_in);
- } while ((strcmp(log_in,S.login1)!=0)&&(strcmp(log_in,S.login)!=0));
- printf("\n");
- if(strcmp(log_in,S.login)==0)
- {
- do
- {
- printf("\tEntrez un mot de passe valide : ");
- gets(pass);
- } while (strcmp(pass,S.password)!=0);
- printf("\n\tIdentification reussie ...");
- printf("\n\tAppuyez sur Entree pour acceder au menu d'acceuil ...");
- s=1;
- getch();
- clrscr();
- }
- else
- {
- do
- {
- printf("\tEntrez un mot de passe valide : ");
- gets(pass);
- } while (strcmp(pass,S.password1)!=0);
- printf("\n\tIdentification reussie ...");
- printf("\n\tAppuyez sur Entree pour acceder au menu d'acceuil ...");
- s=2;
- getch();
- clrscr();
- }
- }
- }
- fclose(h);
- return s;
- }
-
-
- //*************************************************************************************
- //** Fonction qui permet l'affichage du panneau de configuration de l'administrateur *
- //*************************************************************************************
-
- void Config_admin(void)
- {
- int choix;
- clrscr();
- printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
- printf("\n\t\xBA Panneau de Configuration \xBA");
- printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
- printf("\n\n[1] Afficher le login et mot de passe [ Administrateur ]");
- printf("\n[2] Afficher le login et mot de passe [ Utilisateur ]");
- printf("\n\n[3] Modifier le login et mot de passe [ Administrateur ]");
- printf("\n[4] Modifier le login et mot de passe [ Utilisateur ]");
- printf("\n\n[5] Afficher le nombre de contacts");
- printf("\n[6] Changer de Session");
- printf("\n[7] Reinitialiser le fichier");
- printf("\n\n[0] Retourner au menu principal");
- printf("\n\nVeuillez indiquer votre choix : ");
- scanf("%d",&choix);
- switch(choix)
- {
- case 1:
- clrscr();
- Affiche_Session();
- break;
- case 2:
- clrscr();
- Affiche_Session1();
- break;
- case 3:
- clrscr();
- Modifier_Session();
- break;
- case 4:
- clrscr();
- Modifier_Session1();
- break;
- case 5:
- clrscr();
- printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
- printf("\n\t\xBA Nombres de Contacts \xBA");
- printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
- printf("\n\n\nLe nombre de contacts est de %d ",Nb_Contacts());
- getch();
- break;
- case 6:
- clrscr();
- Menu();
- break;
- case 7:
- clrscr();
- Reset();
- break;
- case 0:
- clrscr();
- Menu_admin();
- break;
- }
- }
-
-
- //**************************************************************************************
- //** Fonction qui permet l'affichage du panneau de configuration de l'utilisateur *
- //**************************************************************************************
-
- void Config_user(void)
- {
- int choix;
- printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
- printf("\n\t\xBA Panneau de Configuration \xBA");
- printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
- printf("\n\n[1] Passer a la session Administrateur");
- printf("\n\n[0] Retourner au menu principal");
- printf("\n\nVeuillez indiquer votre choix : ");
- scanf("%d",&choix);
- switch(choix)
- {
- case 1:
- clrscr();
- Menu();
- break;
- case 0:
- clrscr();
- Menu_user();
- break;
- }
- }
-
-
-
- //**************************************************
- //** Fonction qui permet de supprimer un contact *
- //**************************************************
-
- void Supprimer(void)
- {
- char chemin[]="C:\\liste.txt";
- char chemin2[]="C:\\temp_liste.txt";
- struct Fiche F;
- char nom[30];
- char prenom[30];
- int i=0;
- FILE *f;
- FILE *g;
- f=fopen(chemin,"rb");
- g=fopen(chemin2,"ab");
- if(f==NULL)
- {
- printf("\n Impossible d'ouvrir le fichier %s",chemin);
- }
- else
- {
- if(g==NULL)
- {
- printf("\n Impossible d'ouvrir le fichier %s",chemin2);
- }
- else
- {
- fflush(stdin);
- printf("\n\nEntrez le nom du contact a supprimer : ");
- gets(nom);
- fflush(stdin);
- printf("Entrez le prenom du contact a supprimer : ");
- gets(prenom);
- while(fread(&F,sizeof(struct Fiche),1,f)!=0)
- {
- if((strcmp(F.nom,nom)!=0)&&(strcmp(F.prenom,prenom)!=0))
- {
- i++;
- fwrite(&F,sizeof(struct Fiche),1,g);
- }
- }
- printf("\n\nContact supprime ...");
- if(i==0)
- {
- printf("\n Contact introuvable");
- }
- }
- }
- fclose(f);
- remove(chemin);
- fclose(g);
- rename(chemin2,chemin);
- }
-
- //***************************************************
- //** Fonction qui affiche le menu de modification *
- //***************************************************
-
- int Modif_Champ(void)
- {
- int choix;
- clrscr();
- printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
- printf("\n\t\xBA Menu Modifier \xBA");
- printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
- printf("\n\n[1] Modifier le nom");
- printf("\n[2] Modifier le prenom");
- printf("\n[3] Modifier l'adresse mail ");
- printf("\n[4] Modifier l'adresse");
- printf("\n[5] Modifier la ville");
- printf("\n[6] Modifier le numero du domicile");
- printf("\n[7] Modifier le numero du travail");
- printf("\n[8] Modifier le numero du fax");
- printf("\n[9] Modifier le numero du portable 1");
- printf("\n[10] Modifier le numero du portable 2");
- printf("\n[11] Modifier le numero du groupe");
- printf("\n\n[0] Retourner au menu principal");
- printf("\n\nVeuillez indiquer votre choix : ");
- scanf("%d",&choix);
- return choix;
- }
-
-
-
- //***********************************************
- //** Fonction affichant le menu final d'exit **
- //***********************************************
-
- void Quitter(void)
- {
- clrscr();
- printf("ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»");
- printf("º º");
- printf("º º");
- printf("º º");
- printf("º º");
- printf("º º");
- printf("º º");
- printf("º º");
- printf("º º");
- printf("º ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ º");
- printf("º ³ ³ º");
- printf("º ³ MERCI POUR VOTRE VISITE ³ º");
- printf("º ³ ³ º");
- printf("º ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ º");
- printf("º º");
- printf("º º");
- printf("º º");
- printf("º º");
- printf("º º");
- printf("º zal3a majdiesprit@hotmail.fr Annuaire 1.0 º");
- printf("º nadfrslw nadfrslw@hotmail.fr 2008 / 2009 º");
- printf("º º");
- printf("ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ");
- printf("Appuyez sur une touche pour quitter ...");
- getch();
- }
-
-
-
-
- //*************************************************
- //** Fonction qui permet de modifier un contact *
- //*************************************************
-
- void Modifier(void)
- {
- int choix;
- char chemin[]="C:\\liste.txt";
- char chemin2[]="C:\\temp_liste.txt";
- struct Fiche F;
- char nom[30];
- char prenom[30];
- FILE *f;
- FILE *g;
- f=fopen(chemin,"rb");
- g=fopen(chemin2,"ab");
- if(f==NULL)
- {
- printf("\n Impossible d'ouvrir le fichier %s",chemin);
- }
- else
- {
- if(g==NULL)
- {
- printf("\n Impossible d'ouvrir le fichier %s",chemin2);
- }
- else
- {
- clrscr();
- printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
- printf("\n\t\xBA Menu Modifier \xBA");
- printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
- fflush(stdin);
- printf("\n\nEntrez le nom du contact a modifier : ");
- gets(nom);
- fflush(stdin);
- printf("Entrez le prenom du contact a modifier : ");
- gets(prenom);
- while(fread(&F,sizeof(struct Fiche),1,f)!=0)
- {
- if((strcmp(F.nom,nom)!=0)&&(strcmp(F.prenom,prenom)!=0))
- {
- fwrite(&F,sizeof(struct Fiche),1,g);
- printf("\n Contact introuvable");
- }
- else
- {
- do
- {
- choix=Modif_Champ();
- clrscr();
- switch(choix)
- {
- case 1:
- printf("\nVeuillez saisir le nouveau nom :");
- scanf("%s",F.nom);
- break;
- case 2:
- printf("\nVeuillez saisir le nouveau prenom :");
- scanf("%s",F.prenom);
- break;
- case 3:
- printf("\nVeuillez saisir le nouveau mail :");
- scanf("%s",F.mail);
- break;
- case 4:
- printf("\nVeuillez saisir la nouvelle adresse :");
- scanf("%s",F.adresse);
- break;
- case 5:
- printf("\nVeuillez saisir la ville :");
- scanf("%s",F.ville);
- break;
- case 6:
- printf("\nVeuillez saisir le numero du domicile :");
- scanf("%s",F.num_dom);
- break;
- case 7:
- printf("\nVeuillez saisir le numero du travail :");
- scanf("%s",F.num_travail);
- break;
- case 8:
- printf("\nVeuillez saisir le numero du fax :");
- scanf("%s",F.num_fax);
- break;
- case 9:
- printf("\nVeuillez saisir le numero du protable 1 :");
- scanf("%s",F.num_portable1);
- break;
- case 10:
- printf("\nVeuillez saisir le numero du portable 2 :");
- scanf("%s",F.num_portable2);
- break;
- case 11:
- printf("\nVeuillez saisir le numero du groupe :");
- scanf("%d",&F.groupe);
- break;
- }
- }while(choix!=0);
- fwrite(&F,sizeof(struct Fiche),1,g); // Fin switch
- } // Fin else
- } // Fin while
- } // Fin else g
- } // Fin else f
- fclose(f);
- remove(chemin);
- fclose(g);
- rename(chemin2,chemin);
- }
-
-
-
- //**************************************************
- //** Fonction qui permet l'ajout d'un contact *
- //**************************************************
-
-
- void Ajouter(void)
- {
- char chemin[]="C:\\liste.txt";
- struct Fiche F;
- FILE *f;
- f=fopen(chemin,"ab");
- if(f==NULL)
- {
- printf("\n Impossible d'ouvrir le fichier %s",chemin);
- }
- else
- {
- printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
- printf("\n\t\xBA Menu Ajouter \xBA");
- printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
- fflush(stdin);
- printf("\n\nNom: \n");
- gets(F.nom);
- fflush(stdin);
- printf("Prenom: \n");
- gets(F.prenom);
- fflush(stdin);
- printf("Mail: \n");
- gets(F.mail);
- fflush(stdin);
- printf("Adresse: \n");
- gets(F.adresse);
- fflush(stdin);
- printf("Ville: \n");
- gets(F.ville);
- fflush(stdin);
- printf("Num Domicile: \n");
- gets(F.num_dom);
- fflush(stdin);
- printf("Num Travail: \n");
- gets(F.num_travail);
- fflush(stdin);
- printf("Num Fax: \n");
- gets(F.num_fax);
- fflush(stdin);
- printf("Num Portable 1: \n");
- gets(F.num_portable1);
- fflush(stdin);
- printf("Num Portable 2: \n");
- gets(F.num_portable2);
- do
- {
- printf("Groupe : [1] Famille [2] Amis [3] Autres\n" );
- scanf("%d",&F.groupe);
- }while((F.groupe!=1)&&(F.groupe!=2)&&(F.groupe!=3));
- fwrite(&F,sizeof(struct Fiche),1,f);
- }
- fclose(f);
- }
-
-
-
- //***************************************************
- //** Fonction qui permet l'affichage d'un contact *
- //***************************************************
-
- void Afficher(void)
- {
- int i=0;
- char chemin[]="C:\\liste.txt";
- struct Fiche F;
- FILE *f;
- f=fopen(chemin,"rb");
- if(f==NULL)
- {
- printf("\n Impossible d'ouvrir le fichier %s",chemin);
- }
- else
- {
- printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
- printf("\n\t\xBA Liste des contacts \xBA");
- printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
- printf("\n\nIl existe %d contact(s) present(s) sur le fichier",Nb_Contacts());
- getch();
- clrscr();
- while(fread(&F,sizeof(struct Fiche),1,f)!=0)
- {
- i++;
- printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
- printf("\n\t\xBA Liste des contacts \xBA");
- printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
- printf("\n\nContact n:%d",i);
- printf("\n\tNom : %s",F.nom);
- printf("\n\tPrenom : %s",F.prenom);
- printf("\n\tMail : %s",F.mail);
- printf("\n\tAdresse : %s",F.adresse);
- printf("\n\tVille : %s",F.ville);
- printf("\n\tNum Domicile : %s",F.num_dom);
- printf("\n\tNum Travail : %s",F.num_travail);
- printf("\n\tNum Fax : %s",F.num_fax);
- printf("\n\tNum Portable 1 : %s",F.num_portable1);
- printf("\n\tNum Portable 2 : %s",F.num_portable2);
- switch(F.groupe)
- {
- case 1:
- printf("\n\tGroupe : Famille");
- break;
- case 2:
- printf("\n\tGroupe : Amis");
- break;
- case 3:
- printf("\n\tGroupe : Autres");
- break;
- }
- getch();
- clrscr();
- }
- fclose(f);
- if(i==0)
- {
- printf("\nAucun contact sur le fichier");
- }
- }
- }
-
-
-
-
- //****************************************************
- //** Fonction qui permet la recherche d'un contact *
- //****************************************************
-
- void Rechercher(void)
- {
- int i=0;
- int critere;
- int num;
- char nom[30];
- char ville[30];
- char prenom[30];
- char chemin[]="C:\\liste.txt";
- struct Fiche F;
- FILE *f;
- fflush(stdin);
- do
- {
- clrscr();
- printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
- printf("\n\t\xBA Menu recherche \xBA");
- printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
- printf("\n\n[1] Recherche par nom et prenom");
- printf("\n[2] Recherche par ville");
- printf("\n[3] Recherche par groupe");
- printf("\n\n[0] Retourner au menu principal");
- printf("\n\n\nVeuillez donner le critere de recherche : ");
- scanf("%d",&critere);
- }while(critere<0||critere>3);
- clrscr();
- switch (critere)
- {
- case 1:
- fflush(stdin);
- printf("\n\nEntrez le nom du contact a rechercher : ");
- gets(nom);
- fflush(stdin);
- printf("Entrez le prenom du contact a rechercher : ");
- gets(prenom);
- clrscr();
- f=fopen(chemin,"rb");
- if(f==NULL)
- {
- printf("\n Impossible d'ouvrir le fichier %s",chemin);
- }
- else
- {
- while(fread(&F,sizeof(struct Fiche),1,f)!=0)
- {
- printf("\n\t************************\n");
- if((strcmp(F.nom,nom)==0)&&(strcmp(F.prenom,prenom)==0))
- {
- i++;
- printf("\n\tNom: %s",F.nom);
- printf("\n\tPrenom: %s",F.prenom);
- printf("\n\tMail: %s",F.mail);
- printf("\n\tAdresse: %s",F.adresse);
- printf("\n\tVille : %s",F.ville);
- printf("\n\tNum Domicile: %s",F.num_dom);
- printf("\n\tNum Travail: %s",F.num_travail);
- printf("\n\tNum Fax: %s",F.num_fax);
- printf("\n\tNum Portable 1: %s",F.num_portable1);
- printf("\n\tNum Portable 2: %s",F.num_portable2);
- printf("\n\n\t************************\n");
- }
- }
- if(i==0)
- {
- clrscr();
- printf("\nContact Introuvable");
- }
- }
- break;
- case 2:
- fflush(stdin);
- printf("\n\nEntrez la ville : ");
- gets(ville);
- clrscr();
- f=fopen(chemin,"rb");
- if(f==NULL)
- {
- printf("\n Impossible d'ouvrir le fichier %s",chemin);
- }
- else
- {
- printf("\n\t************************\n");
- while(fread(&F,sizeof(struct Fiche),1,f)!=0)
- {
- if(strcmp(F.ville,ville)==0)
- {
- i++;
- printf("\n\tNom: %s",F.nom);
- printf("\n\tPrenom: %s",F.prenom);
- printf("\n\tMail: %s",F.mail);
- printf("\n\tAdresse: %s",F.adresse);
- printf("\n\tVille : %s",F.ville);
- printf("\n\tNum Domicile: %s",F.num_dom);
- printf("\n\tNum Travail: %s",F.num_travail);
- printf("\n\tNum Fax: %s",F.num_fax);
- printf("\n\tNum Portable 1: %s",F.num_portable1);
- printf("\n\tNum Portable 2: %s",F.num_portable2);
- printf("\n\n\t************************\n");
- }
- }
- if(i==0)
- {
- clrscr();
- printf("\nContact Introuvable");
- }
- }
- break;
- case 3:
- fflush(stdin);
- printf("\nEntrez le numero du groupe : ");
- scanf("%d",&num);
- clrscr();
- f=fopen(chemin,"rb");
- if(f==NULL)
- {
- printf("\n Impossible d'ouvrir le fichier %s",chemin);
- }
- else
- {
- printf("\n\t************************\n");
- while(fread(&F,sizeof(struct Fiche),1,f)!=0)
- {
- if(F.groupe==num)
- {
- i++;
- printf("\n\tNom: %s",F.nom);
- printf("\n\tPrenom: %s",F.prenom);
- printf("\n\tMail: %s",F.mail);
- printf("\n\tAdresse: %s",F.adresse);
- printf("\n\tVille : %s",F.ville);
- printf("\n\tNum Domicile: %s",F.num_dom);
- printf("\n\tNum Travail: %s",F.num_travail);
- printf("\n\tNum Fax: %s",F.num_fax);
- printf("\n\tNum Portable 1: %s",F.num_portable1);
- printf("\n\tNum Portable 2: %s",F.num_portable2);
- printf("\n\n\t************************");
- }
- }
- if(i==0)
- {
- clrscr();
- printf("\nContact Introuvable");
- }
- }
- break;
- }
- fclose(f);
- }
-
- //****************************************************
- //** Fonction qui permet de relancer le programme *
- //****************************************************
-
-
- void Menu(void)
- {
- int choix,s;
- s=Login();
- if(s==2)
- {
- do
- {
- clrscr();
- choix=Menu_user();
- switch (choix)
- {
- case 1 :
- clrscr();
- Rechercher();
- getch();
- break;
- case 2:
- clrscr();
- Afficher();
- break;
- case 3:
- clrscr();
- Config_user();
- break;
- case 0:
- clrscr();
- Quitter();
- break;
- }
- }while(choix!=0);
- }
- else
- {
- do
- {
- clrscr();
- choix=Menu_admin();
- switch (choix)
- {
- case 1:
- clrscr();
- Ajouter();
- break;
- case 2 :
- clrscr();
- Rechercher();
- getch();
- break;
- case 3:
- clrscr();
- Afficher();
- break;
- case 4:
- clrscr();
- Modifier();
- break;
- case 5:
- clrscr();
- Supprimer();
- getch();
- break;
- case 6:
- clrscr();
- Config_admin();
- break;
- case 0:
- clrscr();
- Quitter();
- break;
- }
- }while(choix!=0);
- }
- }
-
-
- void main()
- {
- Menu();
- }
//***************************************************
// Annuaire 1.0 *
//***************************************************
// *
// Annuaire 1.0 a été créé par : *
// - zal3a ( majdiesprit@hotmail.fr ) *
// - nadfrslw ( nadfrslw@hotmail.fr ) *
// Etudiants à ESPRIT, tunisie 2008/2009 *
// *
// Ceci est notre première application en C *
// et ça a été pour un projet en C. *
// On espère encore avancer dans la programmation *
// Toutes vos remarques sont les bienvenues. *
// A bientot pour notre prochaine création ... ;) *
// *
// Zal3a *
// *
//***************************************************
// Remarques : *
//***************************************************
// *
// Annuaire 1.0 a été créé en langage C *
// Il nécessite quelques modifications afin de *
// l'améliorer, malheureusement par manque *
// de temps et vu les circonstances ( fin du délai *
// du projet ) ... *
// *
// On peut citer par exemple : *
// - Modification de la fonction d'identification *
// pour ne plus avoir à copier le fichier *
// "Sessions.txt" sur c:\\ *
// *
// - L'ajout d'un controle sur les saisis pour *
// éviter tout disfonctionnement *
// *
// - L'ajout d'une interface graphique *
// *
//***************************************************
//**********************************
// Déclaration des Bibliothèques *
//**********************************
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
//****************************************
// Déclaration des Fonctions utilisées *
//****************************************
void Reset(void);
void Menu(void);
int Menu_admin(void);
int Menu_user(void);
int Nb_Contacts(void);
void Affiche_Session(void);
void Affiche_Session1(void);
void Modifier_Session(void);
void Modifier_Session1(void);
int Login(void);
void Config_admin(void);
void Config_user(void);
void Supprimer(void);
int Modif_Champ(void);
void Modifier(void);
void Ajouter(void);
void Afficher(void);
void Rechercher(void);
void Quitter(void);
//***************************************************************************
//** Déclaration de la Structure contenant les informations d'un contact *
//***************************************************************************
struct Fiche
{
char nom[30];
char prenom[30];
char mail[30];
char adresse[100];
char num_dom[15];
char num_travail[15];
char num_fax[15];
char num_portable1[15];
char num_portable2[15];
char ville[10];
int groupe;
};
//*****************************************************************************
//** Déclaration de la Structure contenant les comptes d'accés du programme *
//*****************************************************************************
struct Session
{
char login[10];
char password[10];
char login1[10];
char password1[10];
};
//********************************************
//** Fonction qui réinitialise le fichier *
//********************************************
void Reset(void)
{
char chemin[]="C:\\liste.txt";
remove(chemin);
printf("\n\nFichier reinitialise ...");
getch();
}
//*************************************************************
//** Fonction qui permet l'affichage du menu Administrateur *
//*************************************************************
int Menu_admin(void)
{
int choix;
printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
printf("\n\t\xBA Menu Accueil \xBA");
printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
printf("\n\n[1] Ajouter un nouveau contact");
printf("\n[2] Rechercher un contact");
printf("\n[3] Lister les contacts ");
printf("\n[4] Modifier un contact");
printf("\n[5] Supprimer un contact");
printf("\n[6] Acceder au panneau de configuration de Annuaire 1.0");
printf("\n\n[0] Quitter le programme");
printf("\n\nVeuillez indiquer votre choix : ");
scanf("%d",&choix);
return choix;
}
//*************************************************************
//** Fonction qui permet l'affichage du menu Utilisateur *
//*************************************************************
int Menu_user(void)
{
int choix;
printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
printf("\n\t\xBA Menu Accueil \xBA");
printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
printf("\n\n[1] Rechercher un contact");
printf("\n[2] Lister les contacts ");
printf("\n\n[3] Acceder au panneau de configuration de Annuaire 1.0");
printf("\n\n[0] Quitter le programme");
printf("\n\nVeuillez indiquer votre choix : ");
scanf("%d",&choix);
return choix;
}
//****************************************************************
//** Fonction qui affiche le nombre de contacts sur le fichier *
//****************************************************************
int Nb_Contacts(void)
{
int i=0;
char chemin[]="C:\\liste.txt";
struct Fiche F;
FILE *f;
f=fopen(chemin,"rb");
if(f==NULL)
{
printf("\n\n Le fichier %s est introuvable ...",chemin);
}
else
{
while(fread(&F,sizeof(struct Fiche),1,f)!=0)
{
i++;
}
}
fclose(f);
return i;
}
//**************************************************************
// Fonction qui permet d'afficher le compte Administrateur *
//**************************************************************
void Affiche_Session(void)
{
struct Session S;
FILE *h;
char chemin[]="c:\\Sessions.txt";
h=fopen(chemin,"rb");
if(h==NULL)
{
printf("\n\n Le fichier %s est introuvable ...",chemin);
}
else
{
printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
printf("\n\t\xBA Compte d'acces \xBA");
printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
while(fread(&S,sizeof(struct Session),1,h)!=0)
{
printf("\n\nLogin Administrateur : %s",S.login);
printf("\nMot de passe Administrateur : %s",S.password);
getch();
}
}
fclose(h);
}
//**************************************************************
// Fonction qui permet d'afficher le compte Utilisateur *
//**************************************************************
void Affiche_Session1(void)
{
struct Session S;
FILE *h;
char chemin[]="c:\\Sessions.txt";
h=fopen(chemin,"rb");
if(h==NULL)
{
printf("\n\n Le fichier %s est introuvable ...",chemin);
}
else
{
printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
printf("\n\t\xBA Compte d'acces \xBA");
printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
while(fread(&S,sizeof(struct Session),1,h)!=0)
{
printf("\n\nLogin Utilisateur : %s",S.login1);
printf("\nMot de passe Utilisateur : %s",S.password1);
getch();
}
}
fclose(h);
}
//***************************************************************
//** Fonction qui permet de modifier le compte Administrateur *
//***************************************************************
void Modifier_Session(void)
{
struct Session S;
FILE *h;
FILE *g;
char chemin[]="c:\\Sessions.txt";
char chemin1[]="c:\\temp_sessions.txt";
h=fopen(chemin,"rb");
g=fopen(chemin1,"wb");
if(h==NULL)
{
printf("\n\n Le fichier %s est introuvable ...",chemin);
}
else
{
if(g==NULL)
{
printf("\n\n Impossible d'ouvrir le fichier %s",chemin1);
}
else
{
while(fread(&S,sizeof(struct Session),1,h)!=0)
{
printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
printf("\n\t\xBA Compte d'acces \xBA");
printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
fflush(stdin);
printf("\n\nVeuillez saisir le nouveau Login Administrateur : ");
gets(S.login);
fflush(stdin);
printf("\nVeuillez saisir le nouveau Mot de Passe Administrateur : ");
gets(S.password);
fwrite(&S,sizeof(struct Session),1,g);
}
}
}
fclose(h);
remove(chemin);
fclose(g);
rename(chemin1,chemin);
}
//***************************************************************
//** Fonction qui permet de modifier le compte Utilisateur *
//***************************************************************
void Modifier_Session1(void)
{
struct Session S;
FILE *h;
FILE *g;
char chemin[]="c:\\Sessions.txt";
char chemin1[]="c:\\temp_sessions.txt";
h=fopen(chemin,"rb");
g=fopen(chemin1,"wb");
if(h==NULL)
{
printf("\n Impossible d'ouvrir le fichier %s",chemin);
}
else
{
if(g==NULL)
{
printf("\n Impossible d'ouvrir le fichier %s",chemin1);
}
else
{
while(fread(&S,sizeof(struct Session),1,h)!=0)
{
printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
printf("\n\t\xBA Compte d'acces \xBA");
printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
fflush(stdin);
printf("\n\nVeuillez saisir le nouveau Login Utilisateur : ");
gets(S.login1);
fflush(stdin);
printf("\nVeuillez saisir le nouveau Mot de Passe Utilisateur : ");
gets(S.password1);
fwrite(&S,sizeof(struct Session),1,g);
}
}
}
fclose(h);
remove(chemin);
fclose(g);
rename(chemin1,chemin);
}
//***********************************************************
//** Fonction qui permet l'identification de l'utilisateur *
//***********************************************************
int Login(void)
{
int s;
FILE *h;
char log_in[10];
char pass[10];
struct Session S;
char chemin[]="c:\\Sessions.txt";
printf("ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»");
printf("º Annee Universitaire 2008 / 2009 º");
printf("ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹");
printf("º *** *** **** * * ***** ***** º");
printf("º * * * * * * * * * * º");
printf("º * * * * * ** * * * º");
printf("º * * * **** * * * *** * º");
printf("º * ***** * * * ** * * º");
printf("º * * * * * * * * * * º");
printf("º *** * * * * * * ***** * º");
printf("º º");
printf("º **** ** *** **** **** ***** *** *** ***** º");
printf("º * * ** * * * * * * * * * * * * º");
printf("º * * * * * * * * * ** ** * º");
printf("º * * * * * * **** *** ** ** *** º");
printf("º * * ***** * * * * * ** ** * º");
printf("º * * * * * * * * * * * * * * º");
printf("º **** * * **** * * ***** *** *** ***** º");
printf("ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹");
printf("º Cree par : º");
printf("º * Zal3a majdiesprit@hotmail.fr ESPRIT º");
printf("º * Nadfrslw nadfrslw@hotmail.fr Tunisie º");
printf("º º");
printf("ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ");
system("pause");
clrscr();
h=fopen(chemin,"rb");
if(h==NULL)
{
printf("\n Impossible d'ouvrir le fichier %s",chemin);
}
else
{
while(fread(&S,sizeof(struct Session),1,h)!=0)
{
printf("\n\tSoyez le(la) bienvenu(e) \x85 notre Annuaire 1.0 .");
printf("\n\tCe programme a ete cree par zal3a et nadfrslw.\n");
printf("\n\n\n\tVeuillez vous identifier ...\n");
do
{
printf("\tEntrez un login valide : ");
gets(log_in);
} while ((strcmp(log_in,S.login1)!=0)&&(strcmp(log_in,S.login)!=0));
printf("\n");
if(strcmp(log_in,S.login)==0)
{
do
{
printf("\tEntrez un mot de passe valide : ");
gets(pass);
} while (strcmp(pass,S.password)!=0);
printf("\n\tIdentification reussie ...");
printf("\n\tAppuyez sur Entree pour acceder au menu d'acceuil ...");
s=1;
getch();
clrscr();
}
else
{
do
{
printf("\tEntrez un mot de passe valide : ");
gets(pass);
} while (strcmp(pass,S.password1)!=0);
printf("\n\tIdentification reussie ...");
printf("\n\tAppuyez sur Entree pour acceder au menu d'acceuil ...");
s=2;
getch();
clrscr();
}
}
}
fclose(h);
return s;
}
//*************************************************************************************
//** Fonction qui permet l'affichage du panneau de configuration de l'administrateur *
//*************************************************************************************
void Config_admin(void)
{
int choix;
clrscr();
printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
printf("\n\t\xBA Panneau de Configuration \xBA");
printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
printf("\n\n[1] Afficher le login et mot de passe [ Administrateur ]");
printf("\n[2] Afficher le login et mot de passe [ Utilisateur ]");
printf("\n\n[3] Modifier le login et mot de passe [ Administrateur ]");
printf("\n[4] Modifier le login et mot de passe [ Utilisateur ]");
printf("\n\n[5] Afficher le nombre de contacts");
printf("\n[6] Changer de Session");
printf("\n[7] Reinitialiser le fichier");
printf("\n\n[0] Retourner au menu principal");
printf("\n\nVeuillez indiquer votre choix : ");
scanf("%d",&choix);
switch(choix)
{
case 1:
clrscr();
Affiche_Session();
break;
case 2:
clrscr();
Affiche_Session1();
break;
case 3:
clrscr();
Modifier_Session();
break;
case 4:
clrscr();
Modifier_Session1();
break;
case 5:
clrscr();
printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
printf("\n\t\xBA Nombres de Contacts \xBA");
printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
printf("\n\n\nLe nombre de contacts est de %d ",Nb_Contacts());
getch();
break;
case 6:
clrscr();
Menu();
break;
case 7:
clrscr();
Reset();
break;
case 0:
clrscr();
Menu_admin();
break;
}
}
//**************************************************************************************
//** Fonction qui permet l'affichage du panneau de configuration de l'utilisateur *
//**************************************************************************************
void Config_user(void)
{
int choix;
printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
printf("\n\t\xBA Panneau de Configuration \xBA");
printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
printf("\n\n[1] Passer a la session Administrateur");
printf("\n\n[0] Retourner au menu principal");
printf("\n\nVeuillez indiquer votre choix : ");
scanf("%d",&choix);
switch(choix)
{
case 1:
clrscr();
Menu();
break;
case 0:
clrscr();
Menu_user();
break;
}
}
//**************************************************
//** Fonction qui permet de supprimer un contact *
//**************************************************
void Supprimer(void)
{
char chemin[]="C:\\liste.txt";
char chemin2[]="C:\\temp_liste.txt";
struct Fiche F;
char nom[30];
char prenom[30];
int i=0;
FILE *f;
FILE *g;
f=fopen(chemin,"rb");
g=fopen(chemin2,"ab");
if(f==NULL)
{
printf("\n Impossible d'ouvrir le fichier %s",chemin);
}
else
{
if(g==NULL)
{
printf("\n Impossible d'ouvrir le fichier %s",chemin2);
}
else
{
fflush(stdin);
printf("\n\nEntrez le nom du contact a supprimer : ");
gets(nom);
fflush(stdin);
printf("Entrez le prenom du contact a supprimer : ");
gets(prenom);
while(fread(&F,sizeof(struct Fiche),1,f)!=0)
{
if((strcmp(F.nom,nom)!=0)&&(strcmp(F.prenom,prenom)!=0))
{
i++;
fwrite(&F,sizeof(struct Fiche),1,g);
}
}
printf("\n\nContact supprime ...");
if(i==0)
{
printf("\n Contact introuvable");
}
}
}
fclose(f);
remove(chemin);
fclose(g);
rename(chemin2,chemin);
}
//***************************************************
//** Fonction qui affiche le menu de modification *
//***************************************************
int Modif_Champ(void)
{
int choix;
clrscr();
printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
printf("\n\t\xBA Menu Modifier \xBA");
printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
printf("\n\n[1] Modifier le nom");
printf("\n[2] Modifier le prenom");
printf("\n[3] Modifier l'adresse mail ");
printf("\n[4] Modifier l'adresse");
printf("\n[5] Modifier la ville");
printf("\n[6] Modifier le numero du domicile");
printf("\n[7] Modifier le numero du travail");
printf("\n[8] Modifier le numero du fax");
printf("\n[9] Modifier le numero du portable 1");
printf("\n[10] Modifier le numero du portable 2");
printf("\n[11] Modifier le numero du groupe");
printf("\n\n[0] Retourner au menu principal");
printf("\n\nVeuillez indiquer votre choix : ");
scanf("%d",&choix);
return choix;
}
//***********************************************
//** Fonction affichant le menu final d'exit **
//***********************************************
void Quitter(void)
{
clrscr();
printf("ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»");
printf("º º");
printf("º º");
printf("º º");
printf("º º");
printf("º º");
printf("º º");
printf("º º");
printf("º º");
printf("º ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ º");
printf("º ³ ³ º");
printf("º ³ MERCI POUR VOTRE VISITE ³ º");
printf("º ³ ³ º");
printf("º ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ º");
printf("º º");
printf("º º");
printf("º º");
printf("º º");
printf("º º");
printf("º zal3a majdiesprit@hotmail.fr Annuaire 1.0 º");
printf("º nadfrslw nadfrslw@hotmail.fr 2008 / 2009 º");
printf("º º");
printf("ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ");
printf("Appuyez sur une touche pour quitter ...");
getch();
}
//*************************************************
//** Fonction qui permet de modifier un contact *
//*************************************************
void Modifier(void)
{
int choix;
char chemin[]="C:\\liste.txt";
char chemin2[]="C:\\temp_liste.txt";
struct Fiche F;
char nom[30];
char prenom[30];
FILE *f;
FILE *g;
f=fopen(chemin,"rb");
g=fopen(chemin2,"ab");
if(f==NULL)
{
printf("\n Impossible d'ouvrir le fichier %s",chemin);
}
else
{
if(g==NULL)
{
printf("\n Impossible d'ouvrir le fichier %s",chemin2);
}
else
{
clrscr();
printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
printf("\n\t\xBA Menu Modifier \xBA");
printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
fflush(stdin);
printf("\n\nEntrez le nom du contact a modifier : ");
gets(nom);
fflush(stdin);
printf("Entrez le prenom du contact a modifier : ");
gets(prenom);
while(fread(&F,sizeof(struct Fiche),1,f)!=0)
{
if((strcmp(F.nom,nom)!=0)&&(strcmp(F.prenom,prenom)!=0))
{
fwrite(&F,sizeof(struct Fiche),1,g);
printf("\n Contact introuvable");
}
else
{
do
{
choix=Modif_Champ();
clrscr();
switch(choix)
{
case 1:
printf("\nVeuillez saisir le nouveau nom :");
scanf("%s",F.nom);
break;
case 2:
printf("\nVeuillez saisir le nouveau prenom :");
scanf("%s",F.prenom);
break;
case 3:
printf("\nVeuillez saisir le nouveau mail :");
scanf("%s",F.mail);
break;
case 4:
printf("\nVeuillez saisir la nouvelle adresse :");
scanf("%s",F.adresse);
break;
case 5:
printf("\nVeuillez saisir la ville :");
scanf("%s",F.ville);
break;
case 6:
printf("\nVeuillez saisir le numero du domicile :");
scanf("%s",F.num_dom);
break;
case 7:
printf("\nVeuillez saisir le numero du travail :");
scanf("%s",F.num_travail);
break;
case 8:
printf("\nVeuillez saisir le numero du fax :");
scanf("%s",F.num_fax);
break;
case 9:
printf("\nVeuillez saisir le numero du protable 1 :");
scanf("%s",F.num_portable1);
break;
case 10:
printf("\nVeuillez saisir le numero du portable 2 :");
scanf("%s",F.num_portable2);
break;
case 11:
printf("\nVeuillez saisir le numero du groupe :");
scanf("%d",&F.groupe);
break;
}
}while(choix!=0);
fwrite(&F,sizeof(struct Fiche),1,g); // Fin switch
} // Fin else
} // Fin while
} // Fin else g
} // Fin else f
fclose(f);
remove(chemin);
fclose(g);
rename(chemin2,chemin);
}
//**************************************************
//** Fonction qui permet l'ajout d'un contact *
//**************************************************
void Ajouter(void)
{
char chemin[]="C:\\liste.txt";
struct Fiche F;
FILE *f;
f=fopen(chemin,"ab");
if(f==NULL)
{
printf("\n Impossible d'ouvrir le fichier %s",chemin);
}
else
{
printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
printf("\n\t\xBA Menu Ajouter \xBA");
printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
fflush(stdin);
printf("\n\nNom: \n");
gets(F.nom);
fflush(stdin);
printf("Prenom: \n");
gets(F.prenom);
fflush(stdin);
printf("Mail: \n");
gets(F.mail);
fflush(stdin);
printf("Adresse: \n");
gets(F.adresse);
fflush(stdin);
printf("Ville: \n");
gets(F.ville);
fflush(stdin);
printf("Num Domicile: \n");
gets(F.num_dom);
fflush(stdin);
printf("Num Travail: \n");
gets(F.num_travail);
fflush(stdin);
printf("Num Fax: \n");
gets(F.num_fax);
fflush(stdin);
printf("Num Portable 1: \n");
gets(F.num_portable1);
fflush(stdin);
printf("Num Portable 2: \n");
gets(F.num_portable2);
do
{
printf("Groupe : [1] Famille [2] Amis [3] Autres\n" );
scanf("%d",&F.groupe);
}while((F.groupe!=1)&&(F.groupe!=2)&&(F.groupe!=3));
fwrite(&F,sizeof(struct Fiche),1,f);
}
fclose(f);
}
//***************************************************
//** Fonction qui permet l'affichage d'un contact *
//***************************************************
void Afficher(void)
{
int i=0;
char chemin[]="C:\\liste.txt";
struct Fiche F;
FILE *f;
f=fopen(chemin,"rb");
if(f==NULL)
{
printf("\n Impossible d'ouvrir le fichier %s",chemin);
}
else
{
printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
printf("\n\t\xBA Liste des contacts \xBA");
printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
printf("\n\nIl existe %d contact(s) present(s) sur le fichier",Nb_Contacts());
getch();
clrscr();
while(fread(&F,sizeof(struct Fiche),1,f)!=0)
{
i++;
printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
printf("\n\t\xBA Liste des contacts \xBA");
printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
printf("\n\nContact n:%d",i);
printf("\n\tNom : %s",F.nom);
printf("\n\tPrenom : %s",F.prenom);
printf("\n\tMail : %s",F.mail);
printf("\n\tAdresse : %s",F.adresse);
printf("\n\tVille : %s",F.ville);
printf("\n\tNum Domicile : %s",F.num_dom);
printf("\n\tNum Travail : %s",F.num_travail);
printf("\n\tNum Fax : %s",F.num_fax);
printf("\n\tNum Portable 1 : %s",F.num_portable1);
printf("\n\tNum Portable 2 : %s",F.num_portable2);
switch(F.groupe)
{
case 1:
printf("\n\tGroupe : Famille");
break;
case 2:
printf("\n\tGroupe : Amis");
break;
case 3:
printf("\n\tGroupe : Autres");
break;
}
getch();
clrscr();
}
fclose(f);
if(i==0)
{
printf("\nAucun contact sur le fichier");
}
}
}
//****************************************************
//** Fonction qui permet la recherche d'un contact *
//****************************************************
void Rechercher(void)
{
int i=0;
int critere;
int num;
char nom[30];
char ville[30];
char prenom[30];
char chemin[]="C:\\liste.txt";
struct Fiche F;
FILE *f;
fflush(stdin);
do
{
clrscr();
printf("\t\xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB");
printf("\n\t\xBA Menu recherche \xBA");
printf("\n\t\xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC");
printf("\n\n[1] Recherche par nom et prenom");
printf("\n[2] Recherche par ville");
printf("\n[3] Recherche par groupe");
printf("\n\n[0] Retourner au menu principal");
printf("\n\n\nVeuillez donner le critere de recherche : ");
scanf("%d",&critere);
}while(critere<0||critere>3);
clrscr();
switch (critere)
{
case 1:
fflush(stdin);
printf("\n\nEntrez le nom du contact a rechercher : ");
gets(nom);
fflush(stdin);
printf("Entrez le prenom du contact a rechercher : ");
gets(prenom);
clrscr();
f=fopen(chemin,"rb");
if(f==NULL)
{
printf("\n Impossible d'ouvrir le fichier %s",chemin);
}
else
{
while(fread(&F,sizeof(struct Fiche),1,f)!=0)
{
printf("\n\t************************\n");
if((strcmp(F.nom,nom)==0)&&(strcmp(F.prenom,prenom)==0))
{
i++;
printf("\n\tNom: %s",F.nom);
printf("\n\tPrenom: %s",F.prenom);
printf("\n\tMail: %s",F.mail);
printf("\n\tAdresse: %s",F.adresse);
printf("\n\tVille : %s",F.ville);
printf("\n\tNum Domicile: %s",F.num_dom);
printf("\n\tNum Travail: %s",F.num_travail);
printf("\n\tNum Fax: %s",F.num_fax);
printf("\n\tNum Portable 1: %s",F.num_portable1);
printf("\n\tNum Portable 2: %s",F.num_portable2);
printf("\n\n\t************************\n");
}
}
if(i==0)
{
clrscr();
printf("\nContact Introuvable");
}
}
break;
case 2:
fflush(stdin);
printf("\n\nEntrez la ville : ");
gets(ville);
clrscr();
f=fopen(chemin,"rb");
if(f==NULL)
{
printf("\n Impossible d'ouvrir le fichier %s",chemin);
}
else
{
printf("\n\t************************\n");
while(fread(&F,sizeof(struct Fiche),1,f)!=0)
{
if(strcmp(F.ville,ville)==0)
{
i++;
printf("\n\tNom: %s",F.nom);
printf("\n\tPrenom: %s",F.prenom);
printf("\n\tMail: %s",F.mail);
printf("\n\tAdresse: %s",F.adresse);
printf("\n\tVille : %s",F.ville);
printf("\n\tNum Domicile: %s",F.num_dom);
printf("\n\tNum Travail: %s",F.num_travail);
printf("\n\tNum Fax: %s",F.num_fax);
printf("\n\tNum Portable 1: %s",F.num_portable1);
printf("\n\tNum Portable 2: %s",F.num_portable2);
printf("\n\n\t************************\n");
}
}
if(i==0)
{
clrscr();
printf("\nContact Introuvable");
}
}
break;
case 3:
fflush(stdin);
printf("\nEntrez le numero du groupe : ");
scanf("%d",&num);
clrscr();
f=fopen(chemin,"rb");
if(f==NULL)
{
printf("\n Impossible d'ouvrir le fichier %s",chemin);
}
else
{
printf("\n\t************************\n");
while(fread(&F,sizeof(struct Fiche),1,f)!=0)
{
if(F.groupe==num)
{
i++;
printf("\n\tNom: %s",F.nom);
printf("\n\tPrenom: %s",F.prenom);
printf("\n\tMail: %s",F.mail);
printf("\n\tAdresse: %s",F.adresse);
printf("\n\tVille : %s",F.ville);
printf("\n\tNum Domicile: %s",F.num_dom);
printf("\n\tNum Travail: %s",F.num_travail);
printf("\n\tNum Fax: %s",F.num_fax);
printf("\n\tNum Portable 1: %s",F.num_portable1);
printf("\n\tNum Portable 2: %s",F.num_portable2);
printf("\n\n\t************************");
}
}
if(i==0)
{
clrscr();
printf("\nContact Introuvable");
}
}
break;
}
fclose(f);
}
//****************************************************
//** Fonction qui permet de relancer le programme *
//****************************************************
void Menu(void)
{
int choix,s;
s=Login();
if(s==2)
{
do
{
clrscr();
choix=Menu_user();
switch (choix)
{
case 1 :
clrscr();
Rechercher();
getch();
break;
case 2:
clrscr();
Afficher();
break;
case 3:
clrscr();
Config_user();
break;
case 0:
clrscr();
Quitter();
break;
}
}while(choix!=0);
}
else
{
do
{
clrscr();
choix=Menu_admin();
switch (choix)
{
case 1:
clrscr();
Ajouter();
break;
case 2 :
clrscr();
Rechercher();
getch();
break;
case 3:
clrscr();
Afficher();
break;
case 4:
clrscr();
Modifier();
break;
case 5:
clrscr();
Supprimer();
getch();
break;
case 6:
clrscr();
Config_admin();
break;
case 0:
clrscr();
Quitter();
break;
}
}while(choix!=0);
}
}
void main()
{
Menu();
}
Conclusion
*************** * Remarques * *************** Annuaire 1.0 a été créé en langage C Il nécessite quelques modifications afin de l'améliorer, malheureusement par manque de temps et vu les circonstances ( fin du délai du projet ) ... On peut citer par exemple : - Modification de la fonction d'identification pour ne plus avoir à copier le fichier "Sessions.txt" sur c:\\ - L'ajout d'un controle sur les saisis pour éviter tout disfonctionnement - L'ajout d'une interface graphique !!!!!!!!!!!!! ! Attention ! !!!!!!!!!!!!!
Annuaire 1.0 nécessite que le fichier "Sessions.txt" soit présent sur c:\\ pour que la session d'identification aie cours lors de lancement ( à corriger !! )
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Contacts [ par Bog ]
Bonjour, je serais intêressé d'avoir des contacts avec des programmeurs en C++ (travaillant sous Borland C++ Builder de pref) pour avoir la possibilit
Contacts [ par Bog ]
Bonjour, je serais intêressé d'avoir des contacts avec des programmeurs en C++(travaillant sous Borland C++ Builder de pref) pour avoir la possibilité
agenda en C [ par petit_jul ]
Bonjourje cherche comment on peut a partir d'un numéro de semaine obtenir la date de début et de fin de la semaine correspondante (en langage C si pos
PB Structures, Headers, string [ par Pwillou ]
Bonjour, j'ai plein d'erreurs à la compilation de deux fichiers:voici agenda.h:#include <stdio.h>#include <iostream.H>#include <string&
MFC+accées au base de données [ par nizbs ]
bonjour j'ai fait un agenda avec le mfc et je veux faire une connexion à une base de données qui à le continue de l'agendacomment créer une base de do
URGENT!!!! REQUETE DANS L ANNUAIRE D EXCHANE 5.5 [ par rachi333 ]
Salut a tousJ'aimerais faire une requete pour trouver un usager dans la base de donnees d'un serveur exchange (version 5.5 ) en utilisant Visual studi
gestion de Fichier texte [ par aciid_washor ]
Bonjour, j'ai créé un programme qui me sert d'annuaire. L'annuaire en question est ecrit sous forme d'un fichier texte:nom telephonedéclarés comme s
ecrire en c un agenda de personne [ par bingobruno ]
cet agenda est composé du nom ,prenom ,age ,sexe,tel et va permettre l ajout d un contact ,la suppression la modification.tous ceci sous fome de pro
marre [ par erakiel54 ]
bonjour ! Je galere pour crer un agenda tout simple, avec 10 pages au total ... avec simplement pour commencer le nom et le prenom a demander et à
Agenda [ par lafolle24320 ]
Bonjour je débute en api win 32 et galère un peu. Je recherche donc des sources de code d'un petit agenda permettant de classer des rendez vous en uti
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Forum
MATRICE TEMPLATEMATRICE TEMPLATE par hjr2610
Cliquez pour lire la suite par hjr2610 RE : SAC A DOS RE : SAC A DOS par hadjkaddour
Cliquez pour lire la suite par hadjkaddour
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|