Войти
NeoBooker.ru
Добро пожаловать к нам в гости!
Наш сайт посвящён программе NeoBook, с помощью которой вы легко сможете создавать собственные мультимедиа-приложения без необходимости изучать сложные языки программирования! Зарегистрируйтесь, чтобы стать членом нашего сообщества.
  • Страница 1 из 1
  • 1
Модератор форума: Peter, DEMBEL, YURIY  
Поиск данных в строке
DeveloperДата: Сб, 17 Марта 2012, 23:57 | Сообщение # 1
Любопытный
Здравствуйте. Возникла проблема с поиском данных на любой строке во внешнем файле.

В файле данные написал в таком виде:
Иван Иванов|1.1.1|001

Нужно найти Имя,дату и номер по отдельности

По методу подсчета кол-во строк и чтение файла не получается:

Code
FileLen "[TempDir]\file" "[all]"
Loop "1" "[all]" "[result]"
    FileRead "[TempDir]\file" "[result]" "[FileLine]"
        If "[FileLine]" "=" "Иван Иванов"
          SetVar "[image_path_key]" "ok.gif"
        EndIf
        If "[FileLine]" "=" "1.1.1"
          SetVar "[image_path_key]" "ok.gif"
        EndIf
        If "[FileLine]" "=" "001"
          SetVar "[image_path_key]" "ok.gif"
        EndIf
EndLoop


У меня не получается таким образом. Помогите пожалуйста решить данную проблему. Я пробовал с командой SearchStr. Но данная команда находит только лишь имя,а остальные не находит.
Заранее благодарен за отзывы.


:mda:
 
СообщениеЗдравствуйте. Возникла проблема с поиском данных на любой строке во внешнем файле.

В файле данные написал в таком виде:
Иван Иванов|1.1.1|001

Нужно найти Имя,дату и номер по отдельности

По методу подсчета кол-во строк и чтение файла не получается:

Code
FileLen "[TempDir]\file" "[all]"
Loop "1" "[all]" "[result]"
    FileRead "[TempDir]\file" "[result]" "[FileLine]"
        If "[FileLine]" "=" "Иван Иванов"
          SetVar "[image_path_key]" "ok.gif"
        EndIf
        If "[FileLine]" "=" "1.1.1"
          SetVar "[image_path_key]" "ok.gif"
        EndIf
        If "[FileLine]" "=" "001"
          SetVar "[image_path_key]" "ok.gif"
        EndIf
EndLoop


У меня не получается таким образом. Помогите пожалуйста решить данную проблему. Я пробовал с командой SearchStr. Но данная команда находит только лишь имя,а остальные не находит.
Заранее благодарен за отзывы.

Автор - Developer
Дата добавления - 17 Марта 2012 в 23:57
PeterДата: Вс, 18 Марта 2012, 00:38 | Сообщение # 2
Админ NeoBook
Developer, для разделения строки на элементы (по разделителю) вам следует воспользоваться командой StrParse.
В вашем случае это может выглядеть, например, так (если в файле много строк):
Code
FileLen "[TempDir]\file" "[all]"       
Loop "1" "[all]" "[result]"       
          FileRead "[TempDir]\file" "[result]" "[FileLine]"       
          StrParse "[FileLine]" "|" "[String]" ""
              If "[String1]" "=" "Иван Иванов"       
                SetVar "[image_path_key]" "ok.gif"       
              EndIf       
              If "[String2]" "=" "1.1.1"       
                SetVar "[image_path_key]" "ok.gif"       
              EndIf       
              If "[String3]" "=" "001"       
                SetVar "[image_path_key]" "ok.gif"       
              EndIf       
EndLoop
DeleteArray "[String]" "All"


Если же строка всего одна, то достаточно просто команды StrParse.

А вообще, если вы планируете активно работать с большими объемами "персональных" данных и т.п. вместо текстовых файлов лучше применить плагин NeoBookDB для работы с базамии данных.


- А вам какую операционку поставить - экспи, семерку или висту?
- Это ты сейчас о чем?
- Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный?
- Ну, конечно, надежный!
- Вот, значит - экспи, без вопросов! Сейчас сделаем...

(Улицы разбитых фонарей, сезон 10, серия 17)

Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!


При модном втюхе модоподдающимся начинает нравиться
 
СообщениеDeveloper, для разделения строки на элементы (по разделителю) вам следует воспользоваться командой StrParse.
В вашем случае это может выглядеть, например, так (если в файле много строк):
Code
FileLen "[TempDir]\file" "[all]"       
Loop "1" "[all]" "[result]"       
          FileRead "[TempDir]\file" "[result]" "[FileLine]"       
          StrParse "[FileLine]" "|" "[String]" ""
              If "[String1]" "=" "Иван Иванов"       
                SetVar "[image_path_key]" "ok.gif"       
              EndIf       
              If "[String2]" "=" "1.1.1"       
                SetVar "[image_path_key]" "ok.gif"       
              EndIf       
              If "[String3]" "=" "001"       
                SetVar "[image_path_key]" "ok.gif"       
              EndIf       
EndLoop
DeleteArray "[String]" "All"


Если же строка всего одна, то достаточно просто команды StrParse.

А вообще, если вы планируете активно работать с большими объемами "персональных" данных и т.п. вместо текстовых файлов лучше применить плагин NeoBookDB для работы с базамии данных.

Автор - Peter
Дата добавления - 18 Марта 2012 в 00:38
mishemДата: Вс, 18 Марта 2012, 04:42 | Сообщение # 3
Эксперт форума
И сам код нужно минимизировать

Code
FileLen "[TempDir]file" "[all]"
Loop "1" "[all]" "[result]"
            FileRead "[TempDir]file" "[result]" "[FileLine]"
            StrParse "[FileLine]" "|" "[String]" ""
            IfEx "[String1]=Иван Иванов and [String2]=1.1.1 and [String3]=001"
               SetVar "[image_path_key]" "ok.gif"
            EndIf
EndLoop
DeleteArray "[String]" "All"


Иначе [String1] может быть истино, а 2 или 3 ложно. Тогда если [image_path_key] это отображение рисунка, то он будет мигать.

Или если [String1] = Иван Иванов, то последующие команды совершенно не к чему. Так как верно условие, или не верно, [image_path_key] все равно будет ok.gif


Не хочешь читать хелп?

Если хелп и форум не помогли, тогда все ответы здесь



Если вы думаете, что сможете — вы сможете, если думаете, что нет — вы правы.


Сообщение отредактировано
mishem - Вс, 18 Марта 2012, 04:45
 
СообщениеИ сам код нужно минимизировать

Code
FileLen "[TempDir]file" "[all]"
Loop "1" "[all]" "[result]"
            FileRead "[TempDir]file" "[result]" "[FileLine]"
            StrParse "[FileLine]" "|" "[String]" ""
            IfEx "[String1]=Иван Иванов and [String2]=1.1.1 and [String3]=001"
               SetVar "[image_path_key]" "ok.gif"
            EndIf
EndLoop
DeleteArray "[String]" "All"


Иначе [String1] может быть истино, а 2 или 3 ложно. Тогда если [image_path_key] это отображение рисунка, то он будет мигать.

Или если [String1] = Иван Иванов, то последующие команды совершенно не к чему. Так как верно условие, или не верно, [image_path_key] все равно будет ok.gif

Автор - mishem
Дата добавления - 18 Марта 2012 в 04:42
PeterДата: Вс, 18 Марта 2012, 04:48 | Сообщение # 4
Админ NeoBook
Quote (mishem)
И сам код нужно минимизировать

scared
Ну ни себе фига!
mishem, а я думал, что ты плагин предложишь использовать.
:D

Если ему надо выполнение всех трех условий, то можно и минимизировать...


- А вам какую операционку поставить - экспи, семерку или висту?
- Это ты сейчас о чем?
- Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный?
- Ну, конечно, надежный!
- Вот, значит - экспи, без вопросов! Сейчас сделаем...

(Улицы разбитых фонарей, сезон 10, серия 17)

Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!


При модном втюхе модоподдающимся начинает нравиться
 
Сообщение
Quote (mishem)
И сам код нужно минимизировать

scared
Ну ни себе фига!
mishem, а я думал, что ты плагин предложишь использовать.
:D

Если ему надо выполнение всех трех условий, то можно и минимизировать...

Автор - Peter
Дата добавления - 18 Марта 2012 в 04:48
mishemДата: Вс, 18 Марта 2012, 04:51 | Сообщение # 5
Эксперт форума
Quote (Peter)
mishem, а я думал, что ты плагин предложишь использовать.

Плагин я уже предложил, в другой теме. ;)


Не хочешь читать хелп?

Если хелп и форум не помогли, тогда все ответы здесь



Если вы думаете, что сможете — вы сможете, если думаете, что нет — вы правы.
 
Сообщение
Quote (Peter)
mishem, а я думал, что ты плагин предложишь использовать.

Плагин я уже предложил, в другой теме. ;)

Автор - mishem
Дата добавления - 18 Марта 2012 в 04:51
PeterДата: Вс, 18 Марта 2012, 05:12 | Сообщение # 6
Админ NeoBook


- А вам какую операционку поставить - экспи, семерку или висту?
- Это ты сейчас о чем?
- Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный?
- Ну, конечно, надежный!
- Вот, значит - экспи, без вопросов! Сейчас сделаем...

(Улицы разбитых фонарей, сезон 10, серия 17)

Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!


При модном втюхе модоподдающимся начинает нравиться
 
Сообщение

Автор - Peter
Дата добавления - 18 Марта 2012 в 05:12
DeveloperДата: Вс, 18 Марта 2012, 14:03 | Сообщение # 7
Любопытный
Quote (Peter)
В вашем случае это может выглядеть, например, так (если в файле много строк):


Peter, а в [String1] и в [String2] откуда могут быть значение если ничего не задано или эти переменные глобальные? я не понимаю и думал что для каждой переменной надо парсить чтобы получить значение!?
Quote (mishem)
Иначе [String1] может быть истино, а 2 или 3 ложно.

Quote (mishem)
Или если [String1] = Иван Иванов, то последующие команды совершенно не к чему. Так как верно условие, или не верно, [image_path_key] все равно будет ok.gif


Вот поэтому чтобы узнать всё досканально,я каждую отдельно проверяю. Если в одном будет истина а в других лож,то будет не то что я хотел сделать. Поэтому нужно имя и дату отдельно проверять.
Quote (Peter)
плагин NeoBookDB

Peter, Данные качаются с сайта в темп и потом проверяются. Идея с плагином конечно отличная,но к сожалению не работал с базами данных. Можно попробовать.

Добавлено (18 Марта 2012, 14:03)
---------------------------------------------
а ещё вопрос. Интересует безопасность данных. Созданные плагином NeoBookDB базы данных открываются ли на других приложениях кроме самом нб? можно ли защищать базы данных или скрывать?


:mda:
 
Сообщение
Quote (Peter)
В вашем случае это может выглядеть, например, так (если в файле много строк):


Peter, а в [String1] и в [String2] откуда могут быть значение если ничего не задано или эти переменные глобальные? я не понимаю и думал что для каждой переменной надо парсить чтобы получить значение!?
Quote (mishem)
Иначе [String1] может быть истино, а 2 или 3 ложно.

Quote (mishem)
Или если [String1] = Иван Иванов, то последующие команды совершенно не к чему. Так как верно условие, или не верно, [image_path_key] все равно будет ok.gif


Вот поэтому чтобы узнать всё досканально,я каждую отдельно проверяю. Если в одном будет истина а в других лож,то будет не то что я хотел сделать. Поэтому нужно имя и дату отдельно проверять.
Quote (Peter)
плагин NeoBookDB

Peter, Данные качаются с сайта в темп и потом проверяются. Идея с плагином конечно отличная,но к сожалению не работал с базами данных. Можно попробовать.

Добавлено (18 Марта 2012, 14:03)
---------------------------------------------
а ещё вопрос. Интересует безопасность данных. Созданные плагином NeoBookDB базы данных открываются ли на других приложениях кроме самом нб? можно ли защищать базы данных или скрывать?


Автор - Developer
Дата добавления - 18 Марта 2012 в 14:03
PeterДата: Вс, 18 Марта 2012, 14:14 | Сообщение # 8
Админ NeoBook
Quote (Developer)
Peter, а в [String1] и в [String2] откуда могут быть значение если ничего не задано или эти переменные глобальные? я не понимаю и думал что для каждой переменной надо парсить чтобы получить значение!?

Developer, вам надо просто открыть справку по программе и изучить что такое StrParse и с чем его едят.
Если английская справка непонятна, то есть русский перевод, к сожалению, не самой последней версии, но вполне достаточно.

Quote (Developer)
можно ли защищать базы данных или скрывать?

Да, базы данных можно запаролить (правда, не все поля, но текстовую информацию можно).
Более подробно смотрите в справке к плагину.

Для начала работы с NeoBookDB достаточно изучить те примеры, которые прилагаются к плагину.
К тому же, для этого плагина тоже есть русский вариант справки (на нашей страничке плагина).


- А вам какую операционку поставить - экспи, семерку или висту?
- Это ты сейчас о чем?
- Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный?
- Ну, конечно, надежный!
- Вот, значит - экспи, без вопросов! Сейчас сделаем...

(Улицы разбитых фонарей, сезон 10, серия 17)

Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!


При модном втюхе модоподдающимся начинает нравиться
 
Сообщение
Quote (Developer)
Peter, а в [String1] и в [String2] откуда могут быть значение если ничего не задано или эти переменные глобальные? я не понимаю и думал что для каждой переменной надо парсить чтобы получить значение!?

Developer, вам надо просто открыть справку по программе и изучить что такое StrParse и с чем его едят.
Если английская справка непонятна, то есть русский перевод, к сожалению, не самой последней версии, но вполне достаточно.

Quote (Developer)
можно ли защищать базы данных или скрывать?

Да, базы данных можно запаролить (правда, не все поля, но текстовую информацию можно).
Более подробно смотрите в справке к плагину.

Для начала работы с NeoBookDB достаточно изучить те примеры, которые прилагаются к плагину.
К тому же, для этого плагина тоже есть русский вариант справки (на нашей страничке плагина).

Автор - Peter
Дата добавления - 18 Марта 2012 в 14:14
DeveloperДата: Пн, 19 Марта 2012, 14:46 | Сообщение # 9
Любопытный
Quote (Peter)
вам надо просто открыть справку по программе и изучить что такое StrParse

Я теперь понял принцип работы. Не обращал внимание на то что у вас есть на форуме русский перевод.
PS в новой версии есть новые команды,а в справочнике нету пояснений этих команд. Я думаю это большой минус. Можно ли надеется на то, что на вашем форуме будет полной версии справочник?

Quote (Peter)
Для начала работы с NeoBookDB достаточно изучить те примеры, которые прилагаются к плагину.
К тому же, для этого плагина тоже есть русский вариант справки (на нашей страничке плагина).


Благодарен за информацию :)

Добавлено (19 Марта 2012, 14:46)
---------------------------------------------
Не понимаю..
Всё делаю правильно но увы не получается.

Я постараюсь полностью описать принцип работы программы.
Программу пишу для нашего офиса.
У каждого работника будет своя анкета в программе и чтобы в эту анкету получить доступ я разрабатываю авторизацию пользователей перед входом в программу.
Каждый работник имеет свой ключ и авторизуется при вводе ключа,своего имени и дату подключения.
Файл хранится на сайте и при авторизации он качается в темп и оттуда программа должна считывать файл и распознать данные для авторизации.
Содержимое файла:

Quote
5555-sger-qwer-ster-cvvv-1223|Иван Иванов|17.03.2012
5555-sger-qwer-ster-cvvv-1513|Робот|11.11.11
5555-sger-qwer-ster-cvvv-1103|Директор|1.01.2012
5555-sger-qwer-ster-cvvv-1111|бухгалтер|13.02.2011
5555-sger-qwer-ster-cvvv-1145|Люди в черном|15.03.2012


Написал такой код:

DownloadFile "http://site/Keys/keys.txt" "[TempDir]\keys_bvk" "HideProgress"
.Ищем введенные данные

Code
FileLen "[TempDir]\keys" "[all]"
Loop "1" "[all]" "[result]"
    FileRead "[TempDir]\keys" "[result]" "[FileLine]"
    StrParse "[FileLine]" "|" "[String]" ""
        If "[String1]" "=" "[key]"
          SetVar "[image_path_key]" "ok.gif"
        Else
          SetVar "[image_path_name]" "error.png"
        EndIf
        If "[String2]" "=" "[name]"
          SetVar "[image_path_name]" "ok.gif"
        Else
          SetVar "[image_path_name]" "error.png"
        EndIf
        If "[String3]" "=" "[data]"
          SetVar "[image_path_data]" "ok.gif"
        Else
          SetVar "[image_path_data]" "error.png"
        EndIf
DeleteArray "[String]" "All"
EndLoop


Ну в чем дело? Всё же правильно написано. Объясните пожалуйста где я прокололся. МОжет я не правильно составляю файл с ключами?


:mda:
 
Сообщение
Quote (Peter)
вам надо просто открыть справку по программе и изучить что такое StrParse

Я теперь понял принцип работы. Не обращал внимание на то что у вас есть на форуме русский перевод.
PS в новой версии есть новые команды,а в справочнике нету пояснений этих команд. Я думаю это большой минус. Можно ли надеется на то, что на вашем форуме будет полной версии справочник?

Quote (Peter)
Для начала работы с NeoBookDB достаточно изучить те примеры, которые прилагаются к плагину.
К тому же, для этого плагина тоже есть русский вариант справки (на нашей страничке плагина).


Благодарен за информацию :)

Добавлено (19 Марта 2012, 14:46)
---------------------------------------------
Не понимаю..
Всё делаю правильно но увы не получается.

Я постараюсь полностью описать принцип работы программы.
Программу пишу для нашего офиса.
У каждого работника будет своя анкета в программе и чтобы в эту анкету получить доступ я разрабатываю авторизацию пользователей перед входом в программу.
Каждый работник имеет свой ключ и авторизуется при вводе ключа,своего имени и дату подключения.
Файл хранится на сайте и при авторизации он качается в темп и оттуда программа должна считывать файл и распознать данные для авторизации.
Содержимое файла:

Quote
5555-sger-qwer-ster-cvvv-1223|Иван Иванов|17.03.2012
5555-sger-qwer-ster-cvvv-1513|Робот|11.11.11
5555-sger-qwer-ster-cvvv-1103|Директор|1.01.2012
5555-sger-qwer-ster-cvvv-1111|бухгалтер|13.02.2011
5555-sger-qwer-ster-cvvv-1145|Люди в черном|15.03.2012


Написал такой код:

DownloadFile "http://site/Keys/keys.txt" "[TempDir]\keys_bvk" "HideProgress"
.Ищем введенные данные

Code
FileLen "[TempDir]\keys" "[all]"
Loop "1" "[all]" "[result]"
    FileRead "[TempDir]\keys" "[result]" "[FileLine]"
    StrParse "[FileLine]" "|" "[String]" ""
        If "[String1]" "=" "[key]"
          SetVar "[image_path_key]" "ok.gif"
        Else
          SetVar "[image_path_name]" "error.png"
        EndIf
        If "[String2]" "=" "[name]"
          SetVar "[image_path_name]" "ok.gif"
        Else
          SetVar "[image_path_name]" "error.png"
        EndIf
        If "[String3]" "=" "[data]"
          SetVar "[image_path_data]" "ok.gif"
        Else
          SetVar "[image_path_data]" "error.png"
        EndIf
DeleteArray "[String]" "All"
EndLoop


Ну в чем дело? Всё же правильно написано. Объясните пожалуйста где я прокололся. МОжет я не правильно составляю файл с ключами?

Автор - Developer
Дата добавления - 19 Марта 2012 в 14:46
DEMBELДата: Пн, 19 Марта 2012, 14:56 | Сообщение # 10
Наш дизайнер
Во первых, качать файл и засорять temp не нужно, можно сразу получить содержимое в переменную.

InternetGet "http://site/Keys/keys.txt" "[result]" "HideProgress+Async"

Во вторых не совсем понятно, вам нужно разложить на атомы все содержимое файла, или только нужную строку (вряд ли при авторизации конкретного юзера нужно разбирать данные всех юзеров), в этом случае каким образом происходит идентификация строки (по имени?). Если нужны все данные, как предполагается их разложить по переменным чтобы было понятно чьи это данные?. Разложите вначале даже для себя логику работы программы полностью, и тут же решение станет очевидным.


Как задавать вопросы

Win7x64 SP1 Neobook v5.70 (Trial)
WinXP SP3 Neobook v5.62


Сообщение отредактировано
DEMBEL - Пн, 19 Марта 2012, 15:01
 
СообщениеВо первых, качать файл и засорять temp не нужно, можно сразу получить содержимое в переменную.

InternetGet "http://site/Keys/keys.txt" "[result]" "HideProgress+Async"

Во вторых не совсем понятно, вам нужно разложить на атомы все содержимое файла, или только нужную строку (вряд ли при авторизации конкретного юзера нужно разбирать данные всех юзеров), в этом случае каким образом происходит идентификация строки (по имени?). Если нужны все данные, как предполагается их разложить по переменным чтобы было понятно чьи это данные?. Разложите вначале даже для себя логику работы программы полностью, и тут же решение станет очевидным.

Автор - DEMBEL
Дата добавления - 19 Марта 2012 в 14:56
DeveloperДата: Пн, 19 Марта 2012, 15:43 | Сообщение # 11
Любопытный
Quote (DEMBEL)
Если нужны все данные, как предполагается их разложить по переменным чтобы было понятно чьи это данные?


была идея писать данные в файле таким образом:
пример:

[key]=ключ
[name]=имя
[data]=время
Но ключей же для авторизации много и данные разные для каждого пользователя. Поэтому разложить данные на отдельные переменные это слишком долго.

Пользователей будет намного больше и для того чтобы облегчить себе работу я в файле написал для каждого пользователя на отдельной строке. У меня опыта мало в небуке поэтому не знаю пока каким ещё образом можно хранить данные и так же их считывать чтобы правильно авторизовать пользователя.


:mda:
 
Сообщение
Quote (DEMBEL)
Если нужны все данные, как предполагается их разложить по переменным чтобы было понятно чьи это данные?


была идея писать данные в файле таким образом:
пример:

[key]=ключ
[name]=имя
[data]=время
Но ключей же для авторизации много и данные разные для каждого пользователя. Поэтому разложить данные на отдельные переменные это слишком долго.

Пользователей будет намного больше и для того чтобы облегчить себе работу я в файле написал для каждого пользователя на отдельной строке. У меня опыта мало в небуке поэтому не знаю пока каким ещё образом можно хранить данные и так же их считывать чтобы правильно авторизовать пользователя.

Автор - Developer
Дата добавления - 19 Марта 2012 в 15:43
DEMBELДата: Пн, 19 Марта 2012, 16:00 | Сообщение # 12
Наш дизайнер
не понял зачем дату вводить, но вот получилось так. этого более чем достаточно чтобы разобраться.

Добавлено (19 Марта 2012, 16:00)
---------------------------------------------
ну думаю вы поняли что не нужно хранить ключи в файле в открытом виде (если вы их уже не шифранули), ведь доступ к файлу можно получить перейдя по ссылке к нему. Храните в файле хэши ключей. При вводе ключа вычисляйте его хэш и сравнивайте хэши между собой, если совпадают они значит и пароль верный. Получить ключ из хеша нельзя, ввести его вместо пароля тоже. Так что если их и заполучат толку не будет от них.
для хэширования строк есть плагин (zmFunctions->zmGetStringHash).
Прикрепления: auth.zip (2.4 Kb)


Как задавать вопросы

Win7x64 SP1 Neobook v5.70 (Trial)
WinXP SP3 Neobook v5.62


Сообщение отредактировано
DEMBEL - Пн, 19 Марта 2012, 16:02
 
Сообщениене понял зачем дату вводить, но вот получилось так. этого более чем достаточно чтобы разобраться.

Добавлено (19 Марта 2012, 16:00)
---------------------------------------------
ну думаю вы поняли что не нужно хранить ключи в файле в открытом виде (если вы их уже не шифранули), ведь доступ к файлу можно получить перейдя по ссылке к нему. Храните в файле хэши ключей. При вводе ключа вычисляйте его хэш и сравнивайте хэши между собой, если совпадают они значит и пароль верный. Получить ключ из хеша нельзя, ввести его вместо пароля тоже. Так что если их и заполучат толку не будет от них.
для хэширования строк есть плагин (zmFunctions->zmGetStringHash).

Автор - DEMBEL
Дата добавления - 19 Марта 2012 в 16:00
mishemДата: Пн, 19 Марта 2012, 16:13 | Сообщение # 13
Эксперт форума
DEMBEL, ты его еще больше запутал.
:)
Ему просто нужно было добавить условие и выйти из цикла если данные правильные.

Code
FileLen "[TempDir]keys" "[all]"
Loop "1" "[all]" "[result]"
      FileRead "[TempDir]keys" "[result]" "[FileLine]"
      StrParse "[FileLine]" "|" "[String]" ""
          If "[String1]" "=" "[key]"
            SetVar "[image_path_key]" "ok.gif"
          Else
            SetVar "[image_path_name]" "error.png"
          EndIf
          If "[String2]" "=" "[name]"
            SetVar "[image_path_name]" "ok.gif"
          Else
            SetVar "[image_path_name]" "error.png"
          EndIf
          If "[String3]" "=" "[data]"
            SetVar "[image_path_data]" "ok.gif"
          Else
            SetVar "[image_path_data]" "error.png"
          EndIf
            
          IfEx "[image_path_key]=ok.gif and [image_path_name]=ok.gif and [image_path_data]=ok.gif"
             AlertBox "Успешно" "Данные введены верно"
             ExitLoop
          EndIf

DeleteArray "[String]" "All"
EndLoop

IfEx "[image_path_key]<>ok.gif or [image_path_name]<>ok.gif or [image_path_data]<>ok.gif"
AlertBox "Ошибка" "Данные введены не верно"
ExitLoop
EndIf


---------------------------------------------
А вообще я б записал примерно так

Code
FileLen "[TempDir]keys" "[all]"
Loop "1" "[all]" "[result]"
      FileRead "[TempDir]keys" "[result]" "[FileLine]"
      StrParse "[FileLine]" "|" "[String]" ""
          IfEx "[String1]=[key] and [String2]=[name] and [String3]=[data]"
             SetVar "[image_path_key]" "ok.gif"
             SetVar "[image_path_name]" "ok.gif"
             SetVar "[image_path_data]" "ok.gif"
             AlertBox "Ok" "Вход выполнен успешно, ну это и так будет видно по ok.gif"
             ExitLoop
          Else
             SetVar "[image_path_key]" "error.png"
             SetVar "[image_path_name]" "error.png"
             SetVar "[image_path_data]" "error.png"
          EndIf
DeleteArray "[String]" "All"
EndLoop


---------------------------------------------
Developer, пользуйтесь Отладчиком.
Очень удобно отслеживать последовательность действий и нахождение ошибок.
;)

Quote (Developer)
FileLen "[TempDir]\keys" "[all]"

Да, все забываю сказать, здесь не нужна косая черта.


Не хочешь читать хелп?

Если хелп и форум не помогли, тогда все ответы здесь



Если вы думаете, что сможете — вы сможете, если думаете, что нет — вы правы.


Сообщение отредактировано
mishem - Пн, 19 Марта 2012, 16:15
 
СообщениеDEMBEL, ты его еще больше запутал.
:)
Ему просто нужно было добавить условие и выйти из цикла если данные правильные.

Code
FileLen "[TempDir]keys" "[all]"
Loop "1" "[all]" "[result]"
      FileRead "[TempDir]keys" "[result]" "[FileLine]"
      StrParse "[FileLine]" "|" "[String]" ""
          If "[String1]" "=" "[key]"
            SetVar "[image_path_key]" "ok.gif"
          Else
            SetVar "[image_path_name]" "error.png"
          EndIf
          If "[String2]" "=" "[name]"
            SetVar "[image_path_name]" "ok.gif"
          Else
            SetVar "[image_path_name]" "error.png"
          EndIf
          If "[String3]" "=" "[data]"
            SetVar "[image_path_data]" "ok.gif"
          Else
            SetVar "[image_path_data]" "error.png"
          EndIf
            
          IfEx "[image_path_key]=ok.gif and [image_path_name]=ok.gif and [image_path_data]=ok.gif"
             AlertBox "Успешно" "Данные введены верно"
             ExitLoop
          EndIf

DeleteArray "[String]" "All"
EndLoop

IfEx "[image_path_key]<>ok.gif or [image_path_name]<>ok.gif or [image_path_data]<>ok.gif"
AlertBox "Ошибка" "Данные введены не верно"
ExitLoop
EndIf


---------------------------------------------
А вообще я б записал примерно так

Code
FileLen "[TempDir]keys" "[all]"
Loop "1" "[all]" "[result]"
      FileRead "[TempDir]keys" "[result]" "[FileLine]"
      StrParse "[FileLine]" "|" "[String]" ""
          IfEx "[String1]=[key] and [String2]=[name] and [String3]=[data]"
             SetVar "[image_path_key]" "ok.gif"
             SetVar "[image_path_name]" "ok.gif"
             SetVar "[image_path_data]" "ok.gif"
             AlertBox "Ok" "Вход выполнен успешно, ну это и так будет видно по ok.gif"
             ExitLoop
          Else
             SetVar "[image_path_key]" "error.png"
             SetVar "[image_path_name]" "error.png"
             SetVar "[image_path_data]" "error.png"
          EndIf
DeleteArray "[String]" "All"
EndLoop


---------------------------------------------
Developer, пользуйтесь Отладчиком.
Очень удобно отслеживать последовательность действий и нахождение ошибок.
;)

Quote (Developer)
FileLen "[TempDir]\keys" "[all]"

Да, все забываю сказать, здесь не нужна косая черта.

Автор - mishem
Дата добавления - 19 Марта 2012 в 16:13
DEMBELДата: Пн, 19 Марта 2012, 16:15 | Сообщение # 14
Наш дизайнер
Quote (mishem)
выйти из цикла если данные правильные.

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

по сути, всё "программирование" в neobook сводится к правильному использованию двух операций - условий и циклов, никаких магических команд тут нет. Нужна только логика. А последнее время люди берутся что-то состряпать по быстрому, даже в голове не представляя полной картины алгоритма работы, авось и так заработает. Либо бьются на одном месте не понимая что нужно менять алгоритм всей работы. Я лично берусь за программирование сперва на столе с бумагой и ручкой за составлением блок-схемы, чего и всем рекомендую.


Как задавать вопросы

Win7x64 SP1 Neobook v5.70 (Trial)
WinXP SP3 Neobook v5.62
 
Сообщение
Quote (mishem)
выйти из цикла если данные правильные.

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

по сути, всё "программирование" в neobook сводится к правильному использованию двух операций - условий и циклов, никаких магических команд тут нет. Нужна только логика. А последнее время люди берутся что-то состряпать по быстрому, даже в голове не представляя полной картины алгоритма работы, авось и так заработает. Либо бьются на одном месте не понимая что нужно менять алгоритм всей работы. Я лично берусь за программирование сперва на столе с бумагой и ручкой за составлением блок-схемы, чего и всем рекомендую.

Автор - DEMBEL
Дата добавления - 19 Марта 2012 в 16:15
mishemДата: Пн, 19 Марта 2012, 16:37 | Сообщение # 15
Эксперт форума

Добавлено (19 Марта 2012, 16:37)
---------------------------------------------



Этим кодом я так понимаю вы хотите вставлять картинки напротив полей. Визуально показывать ошибочный ввод.

Но представьте что у вас 1000 записей.... Эти картинки будут беспорядочно мигать, если какие то данные будут совпадать. Например имя.

Вторая поправка, Дембель правильно указал, что не стоит перебирать весь список. К примеру каждому можно назначить свой ID который записывать в самом начале. И после сначала производить поиск по ID, а уже после парсить строку и проверять правильност введенных данных.

В этом случае уже можно будет подставлять картинки.
Прикрепления: 2714391.png (12.8 Kb)


Не хочешь читать хелп?

Если хелп и форум не помогли, тогда все ответы здесь



Если вы думаете, что сможете — вы сможете, если думаете, что нет — вы правы.


Сообщение отредактировано
mishem - Пн, 19 Марта 2012, 16:24
 
Сообщение

Добавлено (19 Марта 2012, 16:37)
---------------------------------------------



Этим кодом я так понимаю вы хотите вставлять картинки напротив полей. Визуально показывать ошибочный ввод.

Но представьте что у вас 1000 записей.... Эти картинки будут беспорядочно мигать, если какие то данные будут совпадать. Например имя.

Вторая поправка, Дембель правильно указал, что не стоит перебирать весь список. К примеру каждому можно назначить свой ID который записывать в самом начале. И после сначала производить поиск по ID, а уже после парсить строку и проверять правильност введенных данных.

В этом случае уже можно будет подставлять картинки.

Автор - mishem
Дата добавления - 19 Марта 2012 в 16:37
PeterДата: Пн, 19 Марта 2012, 21:33 | Сообщение # 16
Админ NeoBook
Quote (DEMBEL)
сперва на столе с бумагой и ручкой за составлением блок-схемы

Точь-в-точь Штирлиц!
:)

Quote (Developer)
Пользователей будет намного больше

Quote (Developer)
поэтому не знаю пока каким ещё образом можно хранить данные и так же их считывать

Quote (Developer)
чтобы облегчить себе работу

... нужно использовать базы данных и подключить в работу плагин NeoBookDB.
Это - единственно верный путь, особенно, если пользователей будет много.
Я уж говорил об этом.


- А вам какую операционку поставить - экспи, семерку или висту?
- Это ты сейчас о чем?
- Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный?
- Ну, конечно, надежный!
- Вот, значит - экспи, без вопросов! Сейчас сделаем...

(Улицы разбитых фонарей, сезон 10, серия 17)

Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!


При модном втюхе модоподдающимся начинает нравиться
 
Сообщение
Quote (DEMBEL)
сперва на столе с бумагой и ручкой за составлением блок-схемы

Точь-в-точь Штирлиц!
:)

Quote (Developer)
Пользователей будет намного больше

Quote (Developer)
поэтому не знаю пока каким ещё образом можно хранить данные и так же их считывать

Quote (Developer)
чтобы облегчить себе работу

... нужно использовать базы данных и подключить в работу плагин NeoBookDB.
Это - единственно верный путь, особенно, если пользователей будет много.
Я уж говорил об этом.

Автор - Peter
Дата добавления - 19 Марта 2012 в 21:33
DeveloperДата: Пн, 19 Марта 2012, 21:46 | Сообщение # 17
Любопытный
Quote (Peter)
Это - единственно верный путь, особенно, если пользователей будет много.

Да знаю. Я Пока изучаю данный плагин.

Сегодня как приеду попробую все на практике.
Всем спасибо за помощь.


:mda:
 
Сообщение
Quote (Peter)
Это - единственно верный путь, особенно, если пользователей будет много.

Да знаю. Я Пока изучаю данный плагин.

Сегодня как приеду попробую все на практике.
Всем спасибо за помощь.

Автор - Developer
Дата добавления - 19 Марта 2012 в 21:46
mishemДата: Пн, 19 Марта 2012, 23:14 | Сообщение # 18
Эксперт форума
Quote (Peter)
Это - единственно верный путь, особенно, если пользователей будет много.

Если пользователей будет до 1000(хотя я сомневаюсь что столько будет), и кроме как регистрации не нужно больше хранить никакие данные в базе, то считаю что не целесообразно подключать плагин. Если только для общего развития.

Нужно пересмотреть код регистрации.
Quote (Developer)
5555-sger-qwer-ster-cvvv-1145|Люди в черном|15.03.2012

Пока не понятно зачем нужна строка 5555-sger-qwer-ster-cvvv-1145?

Можно сделать примерно так. День рождения все всегда свой знают, это будет вместо ID.
Пишем:

День рождения|Логин|Пароль

Загружаем из файла данные в список.
Ищем день рождения и получаем всю строку.
Парсим на предмет логина и пароля. Сверяем.
Все.

Можно без списка, но подклчить плагин hpwControl, который все равно как я понял из других постов понадобится.

С помощью этого плагина находим № строки в которой совпалоа дата рождения, ну а дальше все тоже самое.

Добавлено (19 Марта 2012, 23:14)
---------------------------------------------



Не хочешь читать хелп?

Если хелп и форум не помогли, тогда все ответы здесь



Если вы думаете, что сможете — вы сможете, если думаете, что нет — вы правы.
 
Сообщение
Quote (Peter)
Это - единственно верный путь, особенно, если пользователей будет много.

Если пользователей будет до 1000(хотя я сомневаюсь что столько будет), и кроме как регистрации не нужно больше хранить никакие данные в базе, то считаю что не целесообразно подключать плагин. Если только для общего развития.

Нужно пересмотреть код регистрации.
Quote (Developer)
5555-sger-qwer-ster-cvvv-1145|Люди в черном|15.03.2012

Пока не понятно зачем нужна строка 5555-sger-qwer-ster-cvvv-1145?

Можно сделать примерно так. День рождения все всегда свой знают, это будет вместо ID.
Пишем:

День рождения|Логин|Пароль

Загружаем из файла данные в список.
Ищем день рождения и получаем всю строку.
Парсим на предмет логина и пароля. Сверяем.
Все.

Можно без списка, но подклчить плагин hpwControl, который все равно как я понял из других постов понадобится.

С помощью этого плагина находим № строки в которой совпалоа дата рождения, ну а дальше все тоже самое.

Добавлено (19 Марта 2012, 23:14)
---------------------------------------------


Автор - mishem
Дата добавления - 19 Марта 2012 в 23:14
PeterДата: Пн, 19 Марта 2012, 23:35 | Сообщение # 19
Админ NeoBook
Quote (mishem)
не целесообразно подключать плагин

scared
Ну ни себе фига!
Во второй раз!
mishem, с тобой все впорядке?
:D

При работе с массивами однотипных данных "базы" будут многократно эффективнее текстовых файлов!
Это - аксиома, и спорить с этим попросту бессмысленно.
Базы данных именно для того и были придуманы.
Использование баз данных позволяет гибко осуществлять поиск (выборку информации) по разным критериям, а также по их комплексу.
И ко всему прочему поиск по базам данных многократно быстрее.

Другое дело - насколько необходимо использовать базы?
Если пользователей всего десяток-другой, и критериев пара-тройка штук, то можно обойтись и текстовыми файлами.
Можно конечно, организовать базы и в виде текстовых файлов, и примеры тому есть (в частности "Кулинарная книга" ас-мастера), но это потребует немалого мастерства в организации таких "баз", и методов их использования, но, в любом случае, по эффективности проиграет обычным базам.

Quote (mishem)
но подклчить плагин hpwControl

Афигеть!
Одному плагину "дать отставку", но при этом предложить другой!
Нет слов...
%)

Quote (mishem)
Тогда скорей всего так
Mmbuilder > Neobook > C++ > Delphi

Правильнее так:
MMB -> NeoBook -> Delphi.
Зная Delphi, С++ нафиг не нужен!
Если только "для общего развития"...
:)


- А вам какую операционку поставить - экспи, семерку или висту?
- Это ты сейчас о чем?
- Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный?
- Ну, конечно, надежный!
- Вот, значит - экспи, без вопросов! Сейчас сделаем...

(Улицы разбитых фонарей, сезон 10, серия 17)

Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!


При модном втюхе модоподдающимся начинает нравиться
 
Сообщение
Quote (mishem)
не целесообразно подключать плагин

scared
Ну ни себе фига!
Во второй раз!
mishem, с тобой все впорядке?
:D

При работе с массивами однотипных данных "базы" будут многократно эффективнее текстовых файлов!
Это - аксиома, и спорить с этим попросту бессмысленно.
Базы данных именно для того и были придуманы.
Использование баз данных позволяет гибко осуществлять поиск (выборку информации) по разным критериям, а также по их комплексу.
И ко всему прочему поиск по базам данных многократно быстрее.

Другое дело - насколько необходимо использовать базы?
Если пользователей всего десяток-другой, и критериев пара-тройка штук, то можно обойтись и текстовыми файлами.
Можно конечно, организовать базы и в виде текстовых файлов, и примеры тому есть (в частности "Кулинарная книга" ас-мастера), но это потребует немалого мастерства в организации таких "баз", и методов их использования, но, в любом случае, по эффективности проиграет обычным базам.

Quote (mishem)
но подклчить плагин hpwControl

Афигеть!
Одному плагину "дать отставку", но при этом предложить другой!
Нет слов...
%)

Quote (mishem)
Тогда скорей всего так
Mmbuilder > Neobook > C++ > Delphi

Правильнее так:
MMB -> NeoBook -> Delphi.
Зная Delphi, С++ нафиг не нужен!
Если только "для общего развития"...
:)

Автор - Peter
Дата добавления - 19 Марта 2012 в 23:35
mishemДата: Вт, 20 Марта 2012, 01:06 | Сообщение # 20
Эксперт форума
Quote (Peter)
Одному плагину "дать отставку", но при этом предложить другой!

Честное слово, иногда с тобой спорить не хочется.
Спор рождает истину, а здесь из пустого в порожнее...

Quote (Peter)
Другое дело - насколько необходимо использовать базы?

Именно об этом я и говорю. Смысл громоздить базу, ессли будет максимум строк 50.
Я не против плагина, я против необоснованного использования плагина. В данном случае
от этого только вред.

Quote (Peter)
Quote
но подклчить плагин hpwControl


Афигеть!

Я ж написал...
Quote (mishem)
который все равно как я понял из других постов понадобится.


Не хочешь читать хелп?

Если хелп и форум не помогли, тогда все ответы здесь



Если вы думаете, что сможете — вы сможете, если думаете, что нет — вы правы.
 
Сообщение
Quote (Peter)
Одному плагину "дать отставку", но при этом предложить другой!

Честное слово, иногда с тобой спорить не хочется.
Спор рождает истину, а здесь из пустого в порожнее...

Quote (Peter)
Другое дело - насколько необходимо использовать базы?

Именно об этом я и говорю. Смысл громоздить базу, ессли будет максимум строк 50.
Я не против плагина, я против необоснованного использования плагина. В данном случае
от этого только вред.

Quote (Peter)
Quote
но подклчить плагин hpwControl


Афигеть!

Я ж написал...
Quote (mishem)
который все равно как я понял из других постов понадобится.

Автор - mishem
Дата добавления - 20 Марта 2012 в 01:06
PeterДата: Вт, 20 Марта 2012, 01:42 | Сообщение # 21
Админ NeoBook
Quote (mishem)
Честное слово, иногда с тобой спорить не хочется.


mishem, кто совсем недавно "с пеной у рта" отстаивал идею применения плагина там, где можно было обойтись 3-4 строками кода NB, причем с тем же самым эффектом?
:)

Quote (mishem)
Смысл громоздить базу, ессли будет максимум строк 50.

Quote (Developer)
Пользователей будет намного больше

Откуда появилась цифра в 50 строк?

Quote (mishem)
который все равно как я понял из других постов понадобится.

Из того, что имеется в этой теме не следует, что оный плагин понадобится.

Quote (mishem)
В данном случае
от этого только вред.

scared
Это почему же?

Короче - см. начало моего поста.
:D



И вообще, автор сабжа должен сам понимать и представлять, что именно ему требуется, и после этого выбирать нужные пути реализации.
Если он посчитает, что сможет (и лучше) обойтись текстовыми файлами, то значит так и надо поступить.


- А вам какую операционку поставить - экспи, семерку или висту?
- Это ты сейчас о чем?
- Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный?
- Ну, конечно, надежный!
- Вот, значит - экспи, без вопросов! Сейчас сделаем...

(Улицы разбитых фонарей, сезон 10, серия 17)

Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!


При модном втюхе модоподдающимся начинает нравиться
 
Сообщение
Quote (mishem)
Честное слово, иногда с тобой спорить не хочется.


mishem, кто совсем недавно "с пеной у рта" отстаивал идею применения плагина там, где можно было обойтись 3-4 строками кода NB, причем с тем же самым эффектом?
:)

Quote (mishem)
Смысл громоздить базу, ессли будет максимум строк 50.

Quote (Developer)
Пользователей будет намного больше

Откуда появилась цифра в 50 строк?

Quote (mishem)
который все равно как я понял из других постов понадобится.

Из того, что имеется в этой теме не следует, что оный плагин понадобится.

Quote (mishem)
В данном случае
от этого только вред.

scared
Это почему же?

Короче - см. начало моего поста.
:D



И вообще, автор сабжа должен сам понимать и представлять, что именно ему требуется, и после этого выбирать нужные пути реализации.
Если он посчитает, что сможет (и лучше) обойтись текстовыми файлами, то значит так и надо поступить.

Автор - Peter
Дата добавления - 20 Марта 2012 в 01:42
mishemДата: Вт, 20 Марта 2012, 02:32 | Сообщение # 22
Эксперт форума
Quote (Peter)
отстаивал идею применения плагина там, где можно было обойтись 3-4 строками кода NB

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

Quote (Peter)
Откуда появилась цифра в 50 строк?

От огического мышления.
Любая фирма(предприниматель) имея штат больше, не будет заморачиваться с изобретениями.
:)

Quote (Peter)
Это почему же?

Потому что используя плагин БД и изучая его, проект будет закончен не скоро.
:D

Quote (Peter)
И вообще, автор сабжа

Вот именно, автор сабжа.
А мы с тобой начинаем перебирать все возможные и не возможные варианты.


Не хочешь читать хелп?

Если хелп и форум не помогли, тогда все ответы здесь



Если вы думаете, что сможете — вы сможете, если думаете, что нет — вы правы.
 
Сообщение
Quote (Peter)
отстаивал идею применения плагина там, где можно было обойтись 3-4 строками кода NB

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

Quote (Peter)
Откуда появилась цифра в 50 строк?

От огического мышления.
Любая фирма(предприниматель) имея штат больше, не будет заморачиваться с изобретениями.
:)

Quote (Peter)
Это почему же?

Потому что используя плагин БД и изучая его, проект будет закончен не скоро.
:D

Quote (Peter)
И вообще, автор сабжа

Вот именно, автор сабжа.
А мы с тобой начинаем перебирать все возможные и не возможные варианты.

Автор - mishem
Дата добавления - 20 Марта 2012 в 02:32
PeterДата: Вт, 20 Марта 2012, 03:04 | Сообщение # 23
Админ NeoBook
Quote (mishem)
а не городить городульки

Несколько(!) строк кода - городульки?
:)

А вот в данном случае получается пока так, что автору придеться городить городульки.

Quote (mishem)
От огического мышления.


Если честно, я до сих пор, перечитав не раз тему, так и не могу понять - что же и как именно должно работать в сабжевой программе.
:)

Quote (mishem)
Потому что используя плагин БД и изучая его, проект будет закончен не скоро.

А быстро только кошки родят.
:)
Чего-то не похоже на то, что автор пребывает в цейтноте...

Во-первых, изучение этого плагина займет не больше времени, чем создание "городулек".
Вопрос дискутируется уже три дня, этого времени вполне достаточно для изучения плагина, хотя бы в основах.
Во-вторых, знание этого плагина и умение с ним работать, может очень пригодиться в будущем.

Quote (Peter)
А вообще, если вы планируете активно работать с большими объемами "персональных" данных и т.п. вместо текстовых файлов лучше применить плагин

Это было всего-лишь напоминание о возможном пути решения подобных задач, если можно так сказать, в стратегическом плане.

Quote (Peter)
автор сабжа должен сам понимать и представлять, что именно ему требуется, и после этого выбирать нужные пути реализации.
Если он посчитает, что сможет (и лучше) обойтись текстовыми файлами, то значит так и надо поступить.


- А вам какую операционку поставить - экспи, семерку или висту?
- Это ты сейчас о чем?
- Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный?
- Ну, конечно, надежный!
- Вот, значит - экспи, без вопросов! Сейчас сделаем...

(Улицы разбитых фонарей, сезон 10, серия 17)

Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!


При модном втюхе модоподдающимся начинает нравиться
 
Сообщение
Quote (mishem)
а не городить городульки

Несколько(!) строк кода - городульки?
:)

А вот в данном случае получается пока так, что автору придеться городить городульки.

Quote (mishem)
От огического мышления.


Если честно, я до сих пор, перечитав не раз тему, так и не могу понять - что же и как именно должно работать в сабжевой программе.
:)

Quote (mishem)
Потому что используя плагин БД и изучая его, проект будет закончен не скоро.

А быстро только кошки родят.
:)
Чего-то не похоже на то, что автор пребывает в цейтноте...

Во-первых, изучение этого плагина займет не больше времени, чем создание "городулек".
Вопрос дискутируется уже три дня, этого времени вполне достаточно для изучения плагина, хотя бы в основах.
Во-вторых, знание этого плагина и умение с ним работать, может очень пригодиться в будущем.

Quote (Peter)
А вообще, если вы планируете активно работать с большими объемами "персональных" данных и т.п. вместо текстовых файлов лучше применить плагин

Это было всего-лишь напоминание о возможном пути решения подобных задач, если можно так сказать, в стратегическом плане.

Quote (Peter)
автор сабжа должен сам понимать и представлять, что именно ему требуется, и после этого выбирать нужные пути реализации.
Если он посчитает, что сможет (и лучше) обойтись текстовыми файлами, то значит так и надо поступить.

Автор - Peter
Дата добавления - 20 Марта 2012 в 03:04
mishemДата: Вт, 20 Марта 2012, 03:25 | Сообщение # 24
Эксперт форума
Quote (Peter)
Если честно, я до сих пор, перечитав не раз тему, так и не могу понять - что же и как именно должно работать в сабжевой программе.


Quote (Developer)
Программу пишу для нашего офиса.
У каждого работника будет своя анкета в программе и чтобы в эту анкету получить доступ я разрабатываю авторизацию пользователей перед входом в программу.
Каждый работник имеет свой ключ и авторизуется при вводе ключа,своего имени и дату подключения.
Файл хранится на сайте и при авторизации он качается в темп и оттуда программа должна считывать файл и распознать данные для авторизации.


Ну в принципе от базы данных ему не уйти.
:)


Не хочешь читать хелп?

Если хелп и форум не помогли, тогда все ответы здесь



Если вы думаете, что сможете — вы сможете, если думаете, что нет — вы правы.
 
Сообщение
Quote (Peter)
Если честно, я до сих пор, перечитав не раз тему, так и не могу понять - что же и как именно должно работать в сабжевой программе.


Quote (Developer)
Программу пишу для нашего офиса.
У каждого работника будет своя анкета в программе и чтобы в эту анкету получить доступ я разрабатываю авторизацию пользователей перед входом в программу.
Каждый работник имеет свой ключ и авторизуется при вводе ключа,своего имени и дату подключения.
Файл хранится на сайте и при авторизации он качается в темп и оттуда программа должна считывать файл и распознать данные для авторизации.


Ну в принципе от базы данных ему не уйти.
:)

Автор - mishem
Дата добавления - 20 Марта 2012 в 03:25
PeterДата: Вт, 20 Марта 2012, 03:48 | Сообщение # 25
Админ NeoBook
Quote (mishem)
У каждого работника будет своя анкета в программе и чтобы в эту анкету получить доступ я разрабатываю авторизацию пользователей перед входом в программу.
Каждый работник имеет свой ключ и авторизуется при вводе ключа,своего имени и дату подключения.
Файл хранится на сайте и при авторизации он качается в темп и оттуда программа должна считывать файл и распознать данные для авторизации.

К сожалению,этого совершенно недостаточно для того, чтобы понять "что за программа, и для чего она нужна".
Почему файл хранится где-то сайте (на каком-таком сайте непонятно) в то время, как обычно подобные ключи храняться на каждом персональном компьютере (или флэшке), почему он должен скачиваться, получается, каждый раз при авторизации, когда можно заложить (через базу данных) ключи в саму программу, и, в случае необходимости, их редакторовать, и т.д. и т.п.
Вот от понимания всех этих "тонкостей" и можно оттаклкиваться при выборе стратегии.

Quote (mishem)
от базы данных ему не уйти.

Рано или поздно.
Безусловно.

Ведь ни одна программа не стоИт на месте.
;)

Так-вот и надо "заслушать начальника транспортного цеха"...
:)


- А вам какую операционку поставить - экспи, семерку или висту?
- Это ты сейчас о чем?
- Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный?
- Ну, конечно, надежный!
- Вот, значит - экспи, без вопросов! Сейчас сделаем...

(Улицы разбитых фонарей, сезон 10, серия 17)

Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!


При модном втюхе модоподдающимся начинает нравиться
 
Сообщение
Quote (mishem)
У каждого работника будет своя анкета в программе и чтобы в эту анкету получить доступ я разрабатываю авторизацию пользователей перед входом в программу.
Каждый работник имеет свой ключ и авторизуется при вводе ключа,своего имени и дату подключения.
Файл хранится на сайте и при авторизации он качается в темп и оттуда программа должна считывать файл и распознать данные для авторизации.

К сожалению,этого совершенно недостаточно для того, чтобы понять "что за программа, и для чего она нужна".
Почему файл хранится где-то сайте (на каком-таком сайте непонятно) в то время, как обычно подобные ключи храняться на каждом персональном компьютере (или флэшке), почему он должен скачиваться, получается, каждый раз при авторизации, когда можно заложить (через базу данных) ключи в саму программу, и, в случае необходимости, их редакторовать, и т.д. и т.п.
Вот от понимания всех этих "тонкостей" и можно оттаклкиваться при выборе стратегии.

Quote (mishem)
от базы данных ему не уйти.

Рано или поздно.
Безусловно.

Ведь ни одна программа не стоИт на месте.
;)

Так-вот и надо "заслушать начальника транспортного цеха"...
:)

Автор - Peter
Дата добавления - 20 Марта 2012 в 03:48
  • Страница 1 из 1
  • 1
Поиск: