Nie wiem dlaczego podczas logowanie program się wysypuje. Jeszcze nie oprogramowałem sprawdzania podanego pinu przez użytkownika z tym wczytanym z pliku tekstowego, ale samo to, że powinno w obecnej postaci powrócić do menu.
#include <iostream>
#include <windows.h>
#include <conio.h>
#include <fstream>
#include "naglowki.h"
#include <string>
using namespace std;
void zaloguj();
void zarejestruj();
void Uzytkownik::pokaz()
{
char wybor;
system("cls");
cout << "\t" << "Witaj w banku!" << endl;
cout << "1. Zaloguj" << endl;
cout << "2. Zarejestruj" << endl << endl;
cout << "Wybor: ";
wybor = getch();
switch(wybor)
{
case '1':
{
zaloguj();
break;
}
case '2':
{
zarejestruj();
break;
}
}
}
void Uzytkownik::zaloguj()
{
system("cls");
cout << "\t" << "LOGOWANIE" << endl << endl;
cout << "Podaj PIN: ";
cin >> TPIN;
int ilosc_klientow;
plik.open("iloscklientow.txt", ios::in);
if(plik.good() == false)
{
system("cls");
cout << "Blad polaczenia z baza danych!";
Sleep(2000);
}
int nr_linii2 = 1;
string linia2;
while(getline(plik, linia2))
{
switch(nr_linii2)
{
case 1:
{
ilosc_klientow = atoi(linia2.c_str());
break;
}
}
}
plik.close();
plik.open("uzytkownicy.txt", ios::in);
if(plik.good() == false)
{
system("cls");
cout << "Blad polaczenia z baza danych!";
Sleep(2000);
}
int nr_linii = 1;
string linia;
int licznik = 1;
PPIN = new int[ilosc_klientow];
while(getline(plik, linia))
{
switch(nr_linii)
{
case 1:
{
PPIN[licznik-1] = atoi(linia.c_str());
licznik++;
break;
}
}
if (nr_linii == 2)
{
nr_linii = 0 ;
}
nr_linii++;
}
plik.close();
/* while(true)
{
int i = 0;
if(TPIN == PPIN[i])
{
system("cls");
cout << "Udalo sie zalogowac! Twoj PIN to: " << TPIN;
getchar();getchar();
break;
}
i++;
}*/
}
void Uzytkownik::zarejestruj()
{
static int ilosc_klientow;
static int licznik = 0;
licznik++;
PIN = new int;
StanKonta = new int;
system("cls");
cout << "\t" << "REJESTRACJA" << endl << endl;
cout << "Podaj PIN: ";
cin >> PIN[licznik-1];
StanKontaPoczatkowy = 0;
StanKonta[licznik-1] = StanKontaPoczatkowy;
plik.open("uzytkownicy.txt", ios::out | ios::app);
if (plik.good() == false)
{
system("cls");
cout << "\t" << "Blad polaczenia z baza danych!";
Sleep(2000);
}
else
{
plik << PIN[licznik-1];
plik << endl << StanKonta[licznik-1] << endl;
plik.close();
plik.open("iloscklientow.txt", ios::in);
if(plik.good() == false)
{
system("cls");
cout << "Blad polaczenia z baza danych!";
Sleep(2000);
}
int nr_linii = 1;
string linia;
while(getline(plik,linia))
{
switch(nr_linii)
{
case 1:
ilosc_klientow = atoi(linia.c_str());
}
}
plik.close();
plik.open("iloscklientow.txt", ios::out);
if(plik.good() == false)
{
system("cls");
cout << "Blad polaczenia z baza danych!";
Sleep(2000);
}
else
{
ilosc_klientow++;
plik << ilosc_klientow;
}
plik.close();
}
}