Что нового

Login и пароль при в ходе в программу через ini файл с сайта

vanekzver

Новичок
Сообщения
91
Репутация
2
Код:
$sLogin = 'YourProblemSayMe'

$iCounter = 0
$iInputsLimit = 5

While 1
    $iCounter += 1

    $sInputP = InputBox('Подтверждение Прав', 'Введите Логин', '', '*')
    If @error Then Exit

    If StringCompare($sinputP, $sLogin) = 0 Then
        MsgBox(64, 'Принято', 'Вы указали правильный Логин')
        ExitLoop
    Else
        $sMainMsg = 'Такого Логина Нету В Базе.\n\n'
        $sTriesMsg = 'Попробуйте еще раз.\n(Осталось Попыток: %i, Попыток сделано: %i)'
        $sLimitMsg = _
            "Печалька =([%i] Кончились попытки ввода Логина,\n" & _
            ".\n\nПопробуйте позже."

        If $iCounter = $iInputsLimit Then
            $sMainMsg &= $sLimitMsg
        Else
            $sMainMsg &= $sTriesMsg
        EndIf

        MsgBox(16, 'Отказ', StringFormat($sMainMsg, $iInputsLimit, $iInputsLimit - $iCounter))

        If $iCounter = $iInputsLimit Then Exit
    EndIf
WEnd

MsgBox(64, 'Принято', 'Логин Есть в базе')

$sPass = 'YourProblemIsBadBoy123321'

$iCounter = 0
$iInputsLimit = 5

While 1
    $iCounter += 1

    $sInputP = InputBox('Подтверждение Прав', 'Введите Пароль', '', '*')
    If @error Then Exit

    If StringCompare($sinputP, $sPass) = 0 Then
        MsgBox(64, 'Принято', 'Вы указали правильный Пароль')
        ExitLoop
    Else
		$sMainMsg = 'Такого Логина Нету В Базе.\n\n'
        $sTriesMsg = 'Попробуйте еще раз.\n(Осталось Попыток: %i, Попыток сделано: %i)'
        $sLimitMsg = _
            "Печалька =([%i] Кончились попытки ввода Пароль,\n" & _
            ".\n\nПопробуйте позже."
        If $iCounter = $iInputsLimit Then
            $sMainMsg &= $sLimitMsg
        Else
            $sMainMsg &= $sTriesMsg
        EndIf

        MsgBox(16, 'Отказ', StringFormat($sMainMsg, $iInputsLimit, $iInputsLimit - $iCounter))

        If $iCounter = $iInputsLimit Then Exit
    EndIf
WEnd

MsgBox(64, 'Принято', 'Пароль верен')

Есть функция, но она поочередная, сначала Login, потом пароль.
Можно ли её как нибудь совместить в одну, а так же чтобы логин и пароль хранились не в программе, а на сайте, то есть http://domen.ru/logpas.ini в ini файле.
 

nu3dell

Осваивающий
Сообщения
139
Репутация
24
Re: Логин И пасс при в ходе в программу через ini файл с сайта

Код:
#include 'IniString.au3'

$sLog = 'uuuwww'
$sPass = '54321'
$iControl = _Validate_Password($sLog, $sPass)
If Not @error Then
    If $iControl Then
        MsgBox(64, 'Info', 'Все OK')
    Else
        MsgBox(16, 'Ошибка', 'Пароль неправильный')
        Exit
    EndIf
Else
    MsgBox(16, 'Ошибка', 'Произошла ошибка, попробуйте еще раз')
    Exit
EndIf
MsgBox(64, 'Info', 'Работаем дальше')

Func _Validate_Password($s_Login, $s_Password)
    Local $s_TextFromSite, $s_Url = 'ttp://domen.ru/logpas.ini', _; Ваша ссылка
            $s_Control_Pass, $s_Section = 'Login_Password'
    $s_TextFromSite = InetRead($s_Url, 17)
    If @error Then Return SetError(1)
    $s_TextFromSite = BinaryToString($s_TextFromSite)
    $s_Control_Pass = _IniString_Read($s_TextFromSite, $s_Section, $s_Login, 'Error')
    Return SetError(0, 0, $s_Control_Pass = $s_Password)
EndFunc   ;==>_Validate_Password
 
Автор
V

vanekzver

Новичок
Сообщения
91
Репутация
2
Re: Логин И пасс при в ходе в программу через ini файл с сайта

Это 1/2 Проверки. Нужно чтобы был Input Логина и пасса, то есть его нужно ввести, если такой есть в ini прога запускается
 

Duero

Новичок
Сообщения
14
Репутация
3
Re: Логин И пасс при в ходе в программу через ini файл с сайта

Не надежно как то хранить файл с логинами и паролями на сайте :blink:
 
Автор
V

vanekzver

Новичок
Сообщения
91
Репутация
2
Re: Логин И пасс при в ходе в программу через ini файл с сайта

В программе тем более =)
 

nu3dell

Осваивающий
Сообщения
139
Репутация
24
Re: Логин И пасс при в ходе в программу через ini файл с сайта

Код:
#include <GUIConstants.au3>
#include <EditConstants.au3>
#include <IniString.au3>

GUICreate('Title', 400, 300)
$hLogin = GUICtrlCreateInput('', 50, 50, 120)
$hPassword = GUICtrlCreateInput('', 50, 100, 120, 21, $ES_PASSWORD)
$hButton = GUICtrlCreateButton('Run', 50, 150, 80)

GUISetState()

While 1
    $msg = GUIGetMsg()
    Select
        Case $msg = $GUI_EVENT_CLOSE
            Exit
        Case $msg = $hButton
            $sLog = GUICtrlRead($hLogin)
            $sPass = GUICtrlRead($hPassword)
            $iControl = _Validate_Password($sLog, $sPass)
            If Not @error Then
                If $iControl Then
                    MsgBox(64, 'Info', 'Все OK')
                Else
                    MsgBox(16, 'Ошибка', 'Пароль неправильный')
                    Exit
                EndIf
            Else
                MsgBox(16, 'Ошибка', 'Произошла ошибка, попробуйте еще раз')
                Exit
            EndIf
            MsgBox(64, 'Info', 'Работаем дальше')
    EndSelect
WEnd

Func _Validate_Password($s_Login, $s_Password)
    Local $s_TextFromSite, $s_Url = 'http://domen.ru/logpas.ini', _; Ваша ссылка
            $s_Control_Pass, $s_Section = 'Login_Password'
    $s_TextFromSite = InetRead($s_Url, 17)
    If @error Then Return SetError(1)
    $s_TextFromSite = BinaryToString($s_TextFromSite)
    $s_Control_Pass = _IniString_Read($s_TextFromSite, $s_Section, $s_Login, 'Error')
    Return SetError(0, 0, $s_Control_Pass = $s_Password)
EndFunc   ;==>_Validate_Password
 
Автор
V

vanekzver

Новичок
Сообщения
91
Репутация
2
Re: Логин И пасс при в ходе в программу через ini файл с сайта

А в каком виде в ini записать?
 

_Lexa98_

Осваивающий
Сообщения
551
Репутация
25
Re: Логин И пасс при в ходе в программу через ini файл с сайта

Для лучшей защиты лучше зашифровать логины и пассы в файле через StringEncrypt.
 
Автор
V

vanekzver

Новичок
Сообщения
91
Репутация
2
Re: Логин И пасс при в ходе в программу через ini файл с сайта

С защитой понятно) Но что надо вписать в logpas.ini чтобы он проверял логин и пасс))
 

nu3dell

Осваивающий
Сообщения
139
Репутация
24
Re: Логин И пасс при в ходе в программу через ini файл с сайта

в ini
Код:
login=pass
 
Автор
V

vanekzver

Новичок
Сообщения
91
Репутация
2
Re: Логин И пасс при в ходе в программу через ini файл с сайта

Все проверил, не пашет =/


Добавлено:
Сообщение автоматически объединено:

Код:
#include <GUIConstants.au3>
#include <EditConstants.au3>
#include <IniString.au3>
GUICreate('Авторизация', 200,100)
GUICtrlCreateLabel("Логин", 10, 20)
$hLogin = GUICtrlCreateInput('', 50, 16, 120)
GUICtrlCreateLabel("Пароль", 10, 50)
$hPassword = GUICtrlCreateInput('', 50, 44, 120, 21, $ES_PASSWORD)
$hButton = GUICtrlCreateButton('Войти', 50, 75, 120)

GUISetState()
While 1
    $msg = GUIGetMsg()
    Select
        Case $msg = $GUI_EVENT_CLOSE
            Exit
        Case $msg = $hButton
            $sLog = GUICtrlRead($hLogin)
            $sPass = GUICtrlRead($hPassword)
            $iControl = _Validate_Password($sLog, $sPass)
            If Not @error Then
                If $iControl Then
                    MsgBox(64, 'Info', 'Все OK')
                Else
                    MsgBox(16, 'Ошибка', 'Пароль неправильный')
                    Exit
                EndIf
            Else
                MsgBox(16, 'Ошибка', 'Произошла ошибка, попробуйте еще раз')
                Exit
            EndIf
            MsgBox(64, 'Info', 'Работаем дальше')
    EndSelect
WEnd

Func _Validate_Password($s_Login, $s_Password)
    Local $s_TextFromSite, $s_Url = 'http://2.domen.ru/logpas.ini', _; Ваша ссылка
            $s_Control_Pass, $s_Section = 'Login_Password'
    $s_TextFromSite = InetRead($s_Url, 17)
    If @error Then Return SetError(1)
    $s_TextFromSite = BinaryToString($s_TextFromSite)
    $s_Control_Pass = _IniString_Read($s_TextFromSite, $s_Section, $s_Login, 'Error')
    Return SetError(0, 0, $s_Control_Pass = $s_Password)
EndFunc   ;==>_Validate_Password

В ini
Код:
login=pass
 

nu3dell

Осваивающий
Сообщения
139
Репутация
24
Re: Логин И пасс при в ходе в программу через ini файл с сайта

Код:
[Login_Password]
login=pass
 
Автор
V

vanekzver

Новичок
Сообщения
91
Репутация
2
Re: Логин И пасс при в ходе в программу через ini файл с сайта

Не пашет =/
 

Nik_rus

Python The Snake.
Сообщения
214
Репутация
62
Re: Логин И пасс при в ходе в программу через ini файл с сайта

ini:
А ведь IniString.au3 в стандартной поставке нет...
 
Автор
V

vanekzver

Новичок
Сообщения
91
Репутация
2
Re: Логин И пасс при в ходе в программу через ini файл с сайта

В последней версии входит
 

nu3dell

Осваивающий
Сообщения
139
Репутация
24
Re: Логин И пасс при в ходе в программу через ini файл с сайта

vanekzver
Все работает, вот мой пример
Код:
#include <GUIConstants.au3>
#include <EditConstants.au3>
#include <IniString.au3>
GUICreate('Авторизация', 200,100)
GUICtrlCreateLabel("Логин", 10, 20)
$hLogin = GUICtrlCreateInput('knife', 50, 16, 120)
GUICtrlCreateLabel("Пароль", 10, 50)
$hPassword = GUICtrlCreateInput('123456', 50, 44, 120, 21, $ES_PASSWORD)
$hButton = GUICtrlCreateButton('Войти', 50, 75, 120)

GUISetState()
While 1
    $msg = GUIGetMsg()
    Select
        Case $msg = $GUI_EVENT_CLOSE
            Exit
        Case $msg = $hButton
            $sLog = GUICtrlRead($hLogin)
            $sPass = GUICtrlRead($hPassword)
            $iControl = _Validate_Password($sLog, $sPass)
            If Not @error Then
                If $iControl Then
                    MsgBox(64, 'Info', 'Все OK')
                Else
                    MsgBox(16, 'Ошибка', 'Пароль неправильный')
                   
                EndIf
            Else
                MsgBox(16, 'Ошибка', 'Произошла ошибка, попробуйте еще раз')
                Exit
            EndIf
            MsgBox(64, 'Info', 'Работаем дальше')
    EndSelect
WEnd

Func _Validate_Password($s_Login, $s_Password)
    Local $s_TextFromSite, $s_Url = 'http://dl.dropbox.com/u/54299793/test.ini', _; Ваша ссылка
            $s_Control_Pass, $s_Section = 'Login_Password'
    $s_TextFromSite = InetRead($s_Url, 17)
    If @error Then Return SetError(1)
    $s_TextFromSite = BinaryToString($s_TextFromSite)
    $s_Control_Pass = _IniString_Read($s_TextFromSite, $s_Section, $s_Login, 'Error')
    Return SetError(0, 0, $s_Control_Pass = $s_Password)
EndFunc   ;==>_Validate_Password
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8,671
Репутация
2,481
Re: Логин И пасс при в ходе в программу через ini файл с сайта

vanekzver [?]
В последней версии входит
Версии AutoIt?
Что за дезинформация, не входит оно ни в какую поставку (при всём при том что я очень даже был бы рад).
 
Автор
V

vanekzver

Новичок
Сообщения
91
Репутация
2
Re: Логин И пасс при в ходе в программу через ini файл с сайта

Тогда возможно я заливал какую-то библиотеку и он туда входил


Добавлено:
Сообщение автоматически объединено:

Все спасибо тебе, возможно я что-то проглядел, все работает =)


Добавлено:
Сообщение автоматически объединено:

Только 1 проблема, окно авторизации не закрывается, и функция не начинается.
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
626
Re: Логин И пасс при в ходе в программу через ini файл с сайта

Предупреждение За нарушение правил форума (пункт Б.5):
Имя темы должно нести смысловую нагрузку (отражать суть вопроса/проблемы)
Правильно сформулированное название темы привлекает больше внимания, и шансы получить конкретный ответ увеличиваются.


Данные правила могут пополняться локальными правилами раздела.
Как правильно называть темы

"Логин И пасс при в ходе в программу через ini файл с сайта" - это неприемлемое название темы, переименуйте тему иначе она будет закрыта, а вам возможно будет выдан бан на несколько дней.

С уважением, ваш Глобальный модератор.









по причине
Предупреждение За нарушение общих правил (пункт В.8):
Так как эта конференция называется "Русское сообщество AutoIt", язык общения на ней - Русский. Названия фирм или программных продуктов, аббревиатуры и т.д. должны быть написаны так, как они пишутся в оригинале, например не следует писать УСБ вместо USB. На форуме крайне не рекомендуется намеренно искажать русский язык и использовать "сетевой жаргон" на подобии "Аффтар выпей йадау!".


С уважением, ваш Глобальный модератор.




да и во всех сообщениях тоже не помешало бы
 
Верх