Форум программистов
 
Расширенный поиск
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > C++ > C/C++ Базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 23.02.2017, 00:53   #1
BlackGold
 
Аватар для BlackGold
 
Регистрация: 12.12.2016
Сообщений: 8
Репутация: 10
По умолчанию Поиск полей TADOTABE

Всем привет!
Программа находит логин и пароль только в первом поле в таблице, а нужно что бы все находил.(Форма Аутентификации: логин и пароль)
Помогите понять где проглядел! Использую только TADOTable
Спасибо!
Код:

void __fastcall TForm1::Button1Click(TObject *Sender)
{
 bool found = false;
	Ttable->First();
	for(int i = 0; i < Ttable->RecordCount; i++){
		if(Ttable->FieldByName("username")->AsString.LowerCase() == ELogin->Text.LowerCase())
			if(Ttable->FieldByName("password")->AsString == EPassword->Text){
				found = true;
				break;
			}

	}
	if(found){
	  Form2->LWellcome->Caption = "Wellcome from Pentagon\n" + ELogin->Text + "!";
	  Form2->ShowModal();
	}
}


Последний раз редактировалось BlackGold; 23.02.2017 в 01:01.
BlackGold вне форума   Ответить с цитированием
Старый 25.05.2017, 23:25   #2
Sciv
Профессионал
 
Аватар для Sciv
 
Регистрация: 16.05.2012
Адрес: Курган
Сообщений: 2,795
Репутация: 993
По умолчанию

Цитата:
Сообщение от BlackGold Посмотреть сообщение
for(int i = 0; i < Ttable->RecordCount; i++){
if(Ttable->FieldByName("username")->AsString.LowerCase() == ELogin->Text.LowerCase())
if(Ttable->FieldByName("password")->AsString == EPassword->Text){
found = true;
break;
}
Вот тут и проглядел. Такой Цикл не будет Вам перемещать курсор по таблице. Курсор в таблице так и останется на первом элементе.

Нормально такие обходы организуются кодом:

Код:

Ttable->First();
while (!TTable.Eof){

// тут выполняем действия

TTable.Next();
}

А если совсем идеально - такие вещи делаются с помощью SQL-запросов. И ради безопасности - не на клиенте, а хранимой процедурой на сервере БД
__________________
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
Sciv на форуме   Ответить с цитированием
Ответ



Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск совпадающих значений полей в 2-х таблицах wsv515 БД в Delphi 19 24.05.2012 17:04
поиск или фильтрация подставных полей killas966 БД в Delphi 2 06.12.2010 14:32
Поиск в БД с выбором полей IvaNNN Помощь студентам 3 04.11.2010 12:01
Поиск данных в БД от двух и более полей Talemir БД в Delphi 5 20.11.2009 17:58
Поиск полей в БД Chrom БД в Delphi 2 23.09.2008 12:38




16:40.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.

купить трафик


как улучшить посещаемость, а также решения по монетизации сайтов, видео и приложений

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru