Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

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

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.01.2014, 14:22   #1
spirit-ua
Форумчанин
 
Аватар для spirit-ua
 
Регистрация: 04.06.2009
Сообщений: 351
Стрелка Delphi + Удаленная БД

Всем Привет!

Сразу извиняюсь за то, что тема создана в "Общих вопросах" потому как будут затронуты "общие" вопросы, сеть и БД.

Суть задачи:
Будет писаться клиент-форма на Delphi для работы (чтение-запись) с удаленной базой на MySQL, все бы хорошо, но, провайдер который предоставляет БД запрещает общаться с данными из сторонних приложений, только по HTTP.

Отсюда решение проблемы выжу так: все манипуляции с удаленной БД осуществлять через запросы на сервер который в свою очередь через скрипт будет выполнять операции с БД и возвращать результат, которые в свою очередь опять же будут отображаться на форме.
Я думаю в правильном направлении?

Подскажите, может быть есть более простое решение?
Сразу скажу, клиент должен быть именно на Delphi, WEB-интерфейс не подходит...
Мне разрешено открывать только одну страницу - about :blank. Сперва было скучно, но потом я втянулся. Теперь у меня там живет 2 виртуальных друга, и я слышу голоса из розетки!
spirit-ua вне форума Ответить с цитированием
Старый 20.01.2014, 14:32   #2
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

Цитата:
провайдер который предоставляет БД запрещает общаться с данными из сторонних приложений, только по HTTP.
правильно запрещает

Цитата:
Сразу скажу, клиент должен быть именно на Delphi, WEB-интерфейс не подходит...
а почему?
eval вне форума Ответить с цитированием
Старый 20.01.2014, 15:02   #3
spirit-ua
Форумчанин
 
Аватар для spirit-ua
 
Регистрация: 04.06.2009
Сообщений: 351
По умолчанию

Цитата:
Сообщение от eval Посмотреть сообщение
Сразу скажу, клиент должен быть именно на Delphi, WEB-интерфейс не подходит...

а почему?
Потому как:
1. Есть приложение на Delphi
2. Приложение работает с DB Access которая лежит локально "рядом" с приложением
3. Файл Access'a обновляется методом скачивания из сервера
4. Дописать еще одну форму для обмена информацией не проблема, проблема как лучше реализовать

Отсюда возникла идея "немного" переписать для работы с удаленной БД т.к. перегнать из одной БД в другую не составляет труда + запросы практически идентичны + так легче защитить инфу (программа в переспективе будет платной) + отпадает потребность в обновлениях БД и т.д.

Я понимаю что нужно будет шифровать запросы, доступы, разграничение прав и т.д. но это уже другая опера, сейчас вопрос сотоит в "общении" приложения и удаленной БД.
Мне разрешено открывать только одну страницу - about :blank. Сперва было скучно, но потом я втянулся. Теперь у меня там живет 2 виртуальных друга, и я слышу голоса из розетки!

Последний раз редактировалось spirit-ua; 20.01.2014 в 15:09.
spirit-ua вне форума Ответить с цитированием
Старый 20.01.2014, 15:13   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Сразу скажу, клиент должен быть именно на Delphi, WEB-интерфейс не подходит...
Сразу отвечу, что Делфи прекрасненько может написать приложение, которое будет обмениваться данными по НТТР, даже без надобности прикручивать как ты выразился
WEB-интерфейс.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 20.01.2014, 15:21   #5
spirit-ua
Форумчанин
 
Аватар для spirit-ua
 
Регистрация: 04.06.2009
Сообщений: 351
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Сразу отвечу, что Делфи прекрасненько может написать приложение, которое будет обмениваться данными по НТТР, даже без надобности прикручивать как ты выразился
WEB-интерфейс.
WEB-интерфейс я имел ввиду страничку с сайта...

Делфи прекрасненько может написать приложение, которое будет обмениваться данными по НТТР - ЭТОГО я и добиваюсь, меня интересует сам принцип реализации, хронология действий шаг за шагом и как лучше организовать, какие компоненты, (не)шифровать запросы и т.д.

Подскажите сам принцип реализации
Мне разрешено открывать только одну страницу - about :blank. Сперва было скучно, но потом я втянулся. Теперь у меня там живет 2 виртуальных друга, и я слышу голоса из розетки!
spirit-ua вне форума Ответить с цитированием
Старый 20.01.2014, 16:02   #6
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

принцип вы сами описали
eval вне форума Ответить с цитированием
Старый 20.01.2014, 16:06   #7
doktor255
Заблокирован
 
Регистрация: 31.03.2011
Сообщений: 976
По умолчанию

Отправляй запросы через TIdHttp. Передавай в запросе команду на чтение/запись/удаление, и дополнительные команды, и параметры. Так же в запросе передавай логин пароль. Для шифрования пароля можно использовать Digest авторизацию. В общем сплошное творчество. Кстати скрипт писать не обязательно. Можно напрямую обращаться к БД. Зачем лишние звенья в цепи?
doktor255 вне форума Ответить с цитированием
Старый 20.01.2014, 16:39   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Да. Делать это через IdHTTP (примеры на форуме есть - заряди поиск по этому слову). Так же можно сделать это используя компоненты Synapse - это на вкус и цвет. Примеры тоже на форуме есть.
Цитата:
Можно напрямую обращаться к БД.
цитирую:
Цитата:
все бы хорошо, но, провайдер который предоставляет БД запрещает общаться с данными из сторонних приложений, только по HTTP.
I'm learning to live...

Последний раз редактировалось Stilet; 20.01.2014 в 16:42.
Stilet вне форума Ответить с цитированием
Старый 20.01.2014, 17:06   #9
doktor255
Заблокирован
 
Регистрация: 31.03.2011
Сообщений: 976
По умолчанию

А индя по какому протоколу будет обращаться к БД??? ТОЛЬКО ПО HTTP!!!! 2 года занимался подделкой протоколов, знаю, о чём говорю. Если БД способна принять внешний HTTP запрос, ни какие промежуточные скрипты не понадобятся.
doktor255 вне форума Ответить с цитированием
Старый 20.01.2014, 17:17   #10
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

Цитата:
А индя по какому протоколу будет обращаться к БД??? ТОЛЬКО ПО HTTP!!!!
тут дело не в том как инди будет, а в том что умеет ли субд, и + не разрешено. что правильно
eval вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удаленная БД Apostol13 БД в Delphi 6 15.06.2011 09:23
удаленная MySql генерал БД в Delphi 3 24.04.2011 18:46
Многопользовательская удаленная БД Marx88 Общие вопросы Delphi 5 23.03.2010 15:23
Удаленная БД DenisUser Помощь студентам 1 03.12.2007 11:44