Ciao sono nuovo, e sto imparando c++ da poco sono al 3 anno dell'informatico, stavo provando a fare un menu di login in c++, solo che una volta che creo il file dove salvare l'username e la password, dopo la registrazione, quando faccio il login mi dice che non è valido, e torna all menu, qualcuno riuscirebbe ad aiutarmi?
#include <iostream>
#include <string>
#include <fstream>
#include <stdlib.h>
using namespace std;
bool isLoggedIn(){
string username, password;
string un, pw;
cout << "inserisci l'username: " <<endl;
cin >> username;
cout << "inserisci la password: " <<endl;
cin >> password;
ifstream read(username + ".txt");
//read.open("")
getline(read, un);
getline(read, pw);
if(un == username && pw == password){
return true;
}
else{
return false;
}
}
/*void registrazione(string *un, string *pw){
cout<<"inserici il tuo username"<<endl;
cin>>*un;
cout<<"inserici la password"<<endl;
cin>>*pw;
}*/
int main(){
string un;
string pw;
int scelta;
cout <<" ---------------------- " << endl;
cout <<" MAIN MENU "<< endl;
cout <<" ---------------------- " << endl;
cout <<" 1. Register " << endl;
cout <<" 2. Login " << endl;
cout << endl;
cout << " cosa scegli?: " << endl;
cin >> scelta;
if(scelta == 1){
string username, password;
cout << " Registration: " <<endl;
cout << endl;
cout << " inserisci username;" << endl;
cin >> username;
cout <<" inserisci password: " << endl;
cin >> password;
try {
ofstream file;
file.open(username + ".txt");
file <<"USERNAME: "<< username << endl << "PASSWORD: " << password;
file.close();
cout<< " Benvenuto " << username << "!" <<endl;
} catch(exception e){
cout << "Utente non registrato"<< endl;
}
}
else if(scelta == 2){
bool status = isLoggedIn();
if(!status){
system("CLS");
cout << endl;
cout << "Login non valido! " << endl;
main();
return 0;
}
else {
cout << " sei stato loggato correttamente! " << endl;
cout << endl;
int scelta2;
cout << "Bentornato! " << endl;
cout << endl;
cout << " DASHBOARD " << endl;
cout << " 1. nessun nuovo messaggio " << endl;
cout << endl;
cout << " 1. log out" << endl;
cout << " 2. torna al menu principale " << endl;
cout << " cosa scegli? " << endl;
cin >> scelta2;
if(scelta2 == 1){
system("exit");
}
else{
main();
}
return 1;
}
}
}