Untitled
unknown
plain_text
2 years ago
3.9 kB
10
Indexable
#define _CRT_SECURE_NO_WARNINGS
#include <stdbool.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_STR 64
#define MAX_USERS 10
typedef struct User
{
char izena[MAX_STR];
char pasahitza[MAX_STR];
int erabiltzaile_mota; // 0 user, 1 admin, 2 guest
char email[MAX_STR];
int id;
} User_S;
User_S datubasea[] = {{"admin", "admin", 1, "admin@mondragon.edu", 1},
{"idazkaritza", "11111", 0, "idaz@gmailcom", 2},
{"joseba", "qwerty", 2, "jaagirre@mondragon.edu", 3},
{"irati", "ydwdaj", 2, "iagirre@mondragon.edu", 4},
{"jon", "1231d", 2, "jon@mondragon.edu", 5}};
void erabiltzaileak_bistaratu(User_S datubasea[], int kop_users);
void erabiltzailea_bat_bistaratu(User_S erabiltzailea);
void erabiltzaile_mota_bistaratu(User_S erabiltzailea);
void itxaron();
User_S erabiltzaile_datuak_eskatu();
int konprobatu_user(User_S erabiltzaile_bat);
void menua_denda(int erabil_mota, User_S erabiltzaile_bat);
void agur_mezua();
int main(int num, char *args[])
{
// ALDAGAIAK
int logeatua = 0;
User_S user1;
int saiakerak = 3;
int kop_users = 5;
erabiltzaileak_bistaratu(datubasea, kop_users);
itxaron();
do
{
user1 = erabiltzaile_datuak_eskatu();
logeatua = konprobatu_user(user1);
saiakerak--;
system("cls");
} while (!logeatua && saiakerak > 0);
menua_denda(logeatua, user1);
// bukaera
agur_mezua();
return 0;
}
void erabiltzaileak_bistaratu(User_S datubasea[], int kop_users)
{
int i;
for (i = 0; i < kop_users; i++)
{
erabiltzailea_bat_bistaratu(datubasea[i]);
}
}
void erabiltzailea_bat_bistaratu(User_S erabiltzailea)
{
printf("%d. %s | %s | %s ", erabiltzailea.id, erabiltzailea.izena, erabiltzailea.email, erabiltzailea.pasahitza);
erabiltzaile_mota_bistaratu(erabiltzailea);
}
void erabiltzaile_mota_bistaratu(User_S erabiltzailea)
{
int mota = erabiltzailea.erabiltzaile_mota;
switch (mota)
{
case 0:
printf("| Permission: user\n");
break;
case 1:
printf("| Permission: admin\n");
break;
case 2:
printf("| Permission: guest\n");
break;
}
};
void itxaron()
{
char kar = '0';
printf("\n-----------------------------\n");
printf("Sakatu return jarraitzeko....\n");
printf("-----------------------------\n");
kar = getchar();
system("cls");
}
User_S erabiltzaile_datuak_eskatu()
{
User_S erabiltzaile_bat;
char str[MAX_STR];
printf("================Subasta aplikazioan sartzeko logina================\n");
printf("Username:");
fgets(str, MAX_STR, stdin);
str[strlen(str) - 1] = '\0';
strcpy(erabiltzaile_bat.izena, str);
printf("Password:");
fgets(str, MAX_STR, stdin);
str[strlen(str) - 1] = '\0';
strcpy(erabiltzaile_bat.pasahitza, str);
return erabiltzaile_bat;
}
int konprobatu_user(User_S erabiltzaile_bat)
{
int izenak_berdinak;
int pasahitza_berdinak;
int login = 0;
izenak_berdinak = !strcmp(erabiltzaile_bat.izena, "admin");
if (izenak_berdinak)
{
pasahitza_berdinak = !strcmp(erabiltzaile_bat.pasahitza, "qwerty");
if (pasahitza_berdinak)
{
login = true;
}
}
return login;
}
void menua_denda(int erabil_mota, User_S erabiltzaile_bat)
{
if (erabil_mota)
{
printf("Kaixo %s, administratzaile bezala logeatuta zaude\n", erabiltzaile_bat.izena);
}
else
{
printf("Ez duzu pasahitza asmatu\n");
}
}
void agur_mezua()
{
char kar = '0';
printf("Sakatu return bukatzeko....");
kar = getchar();
}Editor is loading...
Leave a Comment