0 / 0 / 0
Регистрация: 16.05.2012
Сообщений: 36
1

Регистрация и авторизация пользователя - можно ли оптимизировать код

03.05.2014, 21:45. Показов 644. Ответов 3
Метки нет (Все метки)

Можно ли как-то упростить такой код, или это - то что нужно? Простенькие до ужаса регистрация пользователя и авторизация.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#include <fstream>
#include <iostream>
 
using namespace std;
 
int main(){
    
    setlocale(LC_ALL, "Russian");
    
    char login[20], pass[20], name[20], str[50], logpass2[40];
    int choice, grant;
    
    cout << "1. Login\n" << "2. Register\n";
    cin >> choice;
    system("cls");
    switch(choice){
                   case 2:{
                        cout << "Name: ";
                        cin >> login;
                        cout << "Password: ";
                        cin >> pass;
                        ofstream list("list.txt", ios::app);
                        list << login << password;
                        list << endl;
                        list.close();
                        break;
                        }
                   case 1:{
                        ifstream list("list.txt");
                        do
                        {
                        cout << "Name: ";
                        cin >> login;
                        cout << "Password: ";
                        cin >> pass;
                        strcpy(logpass2, login);
                        strcat(logpass2, pass);
                        while(!list.eof()){
                                           list.getline(str, sizeof(list));
                                           if (strcmp(str, logpass2) == 0) {cout << "Access granted"; grant = 1; break;} 
                                           }
                                           list.clear();
                                           list.seekg(0);
                                           system("cls");
                                           cout << "Access denied\n";
                        }while(grant != 1);
                        system("cls"); 
                        list.close(); 
                        break;
                        }
                   }
    system("pause>>void");
    return 0;
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.05.2014, 21:45
Ответы с готовыми решениями:

Авторизация пользователя проходит в три обращения к БД, можно ли это оптимизировать?
Есть такой код, но меня беспокоит, что к mySQL обращаемся 3 раза. Не подскажите, как можно...

Yii авторизация. Можно ли оптимизировать код?
Делаю авторизацию пользователей. В случае если пользователь не активен ( не подтвержден) после...

Авторизация и регистрация пользователя
Нужно создать авторизацию и регистрацию пользователя. Логин и пароль должно храниться в каком то...

Авторизация и регистрация пользователя
public partial class Avtor : Form { private const string CONNECTION_STRING =...

3
148 / 62 / 8
Регистрация: 14.12.2010
Сообщений: 347
Записей в блоге: 1
03.05.2014, 23:58 2
Это то что нужно, хотя и не совсем красиво. Но есть и еще кое что. Строка 39 вызывает сомнения по поводу если можно так выразиться корректности
0
0 / 0 / 0
Регистрация: 16.05.2012
Сообщений: 36
04.05.2014, 14:53  [ТС] 3
Ну у меня при различных значениях ошибок не выдавалось, а 39 строка, ну по другому не знаю как там корректно будет. Использование getline было описано вот в таком виде.
0
148 / 62 / 8
Регистрация: 14.12.2010
Сообщений: 347
Записей в блоге: 1
05.05.2014, 17:14 4
Дело не в ошибках. тут написано что да как.
Второй параметр принимает длину строки которую следует считать если не будет встречен символ '\n'. А в 39 строке передается размер переменной, а автор скорее всего хотел указать размер файла. Это разные вещи которые никак ни относятся друг другу. В вашей простой задаче это будет работать, но до определенного момента, а точнее до того как размер переменной не совпадет с размером очередного слова.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.05.2014, 17:14

Авторизация, регистрация и страница пользователя
Доброго всем вечера! В целях практики и саморазвитие решил сделать аккуратную систему авторизации...

Регистрация, Авторизация, Страница Пользователя, Комментарии
Добрый всем вечер, в php я новичек. Написал я сайт, хочу теперь я создать для него вот такие...

Можно ли оптимизировать код
Доброго вечера. Есть небольшой кусок кода, можно ли как-то его упростить? (потому что идет дубляж...

Можно ли оптимизировать код?
День добрый! Задача: есть полубайтовые значения - машина выдает данные от 1 до 15. Хранятся и...

Как можно оптимизировать код?
Здравствуйте. Написал скрипт, позволяющий считывать с сервера картинку, преобразовывать ее в...

Как можно оптимизировать код?
Здравствуйте, помогите пожалуйста ускорить работу программы. Программа читает журнал событий...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.