Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Delphi Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 Delphi Rio 10.3 Android получение данных с MySQL  [new]
Евгений Стронг
Member

Откуда:
Сообщений: 316
Добрый вечер!

Имеется база данных на MySQL, которая расположена на удаленном VPS сервере. Имеется необходимость как получать, так и отправлять в неё данные. По предыдущему топику сделал заключения, что это можно организовать только по средствам PHP (или python, JS) скриптов, которые в свою очередь будут возвращать данные в JSON формате или каком-нибудь другом, а на клиенте необходимо распарсить ответ. Вопрос: Каким образом это выглядит на практике? Какие компоненты используются, где располагаются скрипты PHP и как до них можно достучаться. Есть у кого опыт разработки подобного?
30 апр 20, 20:25    [22125935]     Ответить | Цитировать Сообщить модератору
 Re: Delphi Rio 10.3 Android получение данных с MySQL  [new]
AltHasp
Member

Откуда:
Сообщений: 182
Евгений Стронг
Какие компоненты используются, где располагаются скрипты PHP и как до них можно достучаться. Есть у кого опыт разработки подобного

Основных компонента два - мозги и руки. Скрипты PHP хранятся на сервере (там где и web-сервер). Мы используем например Perl, а так Гугль в помощь.
Удачи !
1 май 20, 12:10    [22126139]     Ответить | Цитировать Сообщить модератору
 Re: Delphi Rio 10.3 Android получение данных с MySQL  [new]
Евгений Стронг
Member

Откуда:
Сообщений: 316
AltHasp
Евгений Стронг
Какие компоненты используются, где располагаются скрипты PHP и как до них можно достучаться. Есть у кого опыт разработки подобного

Основных компонента два - мозги и руки. Скрипты PHP хранятся на сервере (там где и web-сервер). Мы используем например Perl, а так Гугль в помощь.
Удачи !


Мозги и руки есть. Необходимо понимать, каким образом это на практике реализуется. Если я с помощью PHP вытаскиваю инфу с БД и возвращаю в JSON, то можно это дело на стороне клиента распарсить. Это понятно. Вопрос вот в чем: У меня запрос к БД будет отличаться от того, кто на клиенте его запускает. Проще говоря - это будет запрос с параметров ID клиента, который должен будет увидеть только свои данные. В таком случае мне готовый PHP генерить и кидать его на сервер? Как вот такие моменты реализуют?
1 май 20, 12:15    [22126142]     Ответить | Цитировать Сообщить модератору
 Re: Delphi Rio 10.3 Android получение данных с MySQL  [new]
makhaon
Member

Откуда: A galaxy far far away
Сообщений: 3788
Евгений Стронг,

на сервер передаёшь json-запрос со всеми нужными параметрами. сервер тебе отдаёт назад json-ответ с данными. все запросы к базе делаешь на стороне сервера в php или что там у тебя, там же парсер json и сборщик ответов база > json.
1 май 20, 12:46    [22126160]     Ответить | Цитировать Сообщить модератору
 Re: Delphi Rio 10.3 Android получение данных с MySQL  [new]
Евгений Стронг
Member

Откуда:
Сообщений: 316
makhaon
Евгений Стронг,

на сервер передаёшь json-запрос со всеми нужными параметрами. сервер тебе отдаёт назад json-ответ с данными. все запросы к базе делаешь на стороне сервера в php или что там у тебя, там же парсер json и сборщик ответов база > json.


Направление понятно. Спасибо. Проблема заключается в том, что нет достаточных знаний в веб технологиях, чтобы слёту подобное реализовать, поэтому и ищу способ решить это задачу малой кровью. Уже снова подумываю быть может о Datasnap на MSSQL. Что будет проще, пока не ясно в общем. Почитаю про php и json более основательно. Или ещё думаю варант складывать данные на стороне клиента в какой-нибудь Firebase и настроить синхронизацию с MySQL, но опять же наверняка там будет веб с API.
1 май 20, 12:52    [22126163]     Ответить | Цитировать Сообщить модератору
 Re: Delphi Rio 10.3 Android получение данных с MySQL  [new]
AltHasp
Member

Откуда:
Сообщений: 182
Евгений Стронг,
У нас к примеру есть ftp-доступ к нашему web-серверу (на сервере у них Linux+Apache+MySQL+PHP) и мы тупо купируем php файлы
с шаблонами форм и запросов. Остальное - работа самого сервера. Еще по таску копируем свою базу себе на сервер, на случай падения основного. Что еще написать ? Есть всякие редакторы для облегчения генерирования PHP-кода и локальный офисный (тестовый) web-сервер.

"Всё - телемаркет" (C).
1 май 20, 12:53    [22126164]     Ответить | Цитировать Сообщить модератору
 Re: Delphi Rio 10.3 Android получение данных с MySQL  [new]
Евгений Стронг
Member

Откуда:
Сообщений: 316
AltHasp
Евгений Стронг,
У нас к примеру есть ftp-доступ к нашему web-серверу (на сервере у них Linux+Apache+MySQL+PHP) и мы тупо купируем php файлы
с шаблонами форм и запросов. Остальное - работа самого сервера. Еще по таску копируем свою базу себе на сервер, на случай падения основного. Что еще написать ? Есть всякие редакторы для облегчения генерирования PHP-кода и локальный офисный (тестовый) web-сервер.

"Всё - телемаркет" (C).


У меня VPS и полный доступ с внешним IP. Apache + MySQL + PHP. На счет редакторов посмотрю, спасибо. Так в лом погружать в изучение этих веб дебрей для реализации одной задачи. Поэтому такие удобные "билдеры" будут очень кстати)
1 май 20, 12:59    [22126165]     Ответить | Цитировать Сообщить модератору
 Re: Delphi Rio 10.3 Android получение данных с MySQL  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 52445

Евгений Стронг
Так в лом погружать в изучение этих веб дебрей

Тогда UniGUI тебе в руки. На ведроиде будет работать через браузер.

Posted via ActualForum NNTP Server 1.5

1 май 20, 13:06    [22126170]     Ответить | Цитировать Сообщить модератору
 Re: Delphi Rio 10.3 Android получение данных с MySQL  [new]
makhaon
Member

Откуда: A galaxy far far away
Сообщений: 3788
Евгений Стронг,
если на сервере можно запускать свои бинарники, то можно запилить в том или ином виде бэк на делфи и никакого php не нужно.
1 май 20, 13:13    [22126174]     Ответить | Цитировать Сообщить модератору
 Re: Delphi Rio 10.3 Android получение данных с MySQL  [new]
Евгений Стронг
Member

Откуда:
Сообщений: 316
Dimitry Sibiryakov

Евгений Стронг
Так в лом погружать в изучение этих веб дебрей

Тогда UniGUI тебе в руки. На ведроиде будет работать через браузер.


Я ещё вот на такую штуку нарвался сейчас. Дешевле и поинтереснее на мой взгляд.
1 май 20, 13:23    [22126177]     Ответить | Цитировать Сообщить модератору
 Re: Delphi Rio 10.3 Android получение данных с MySQL  [new]
Евгений Стронг
Member

Откуда:
Сообщений: 316
makhaon
Евгений Стронг,
если на сервере можно запускать свои бинарники, то можно запилить в том или ином виде бэк на делфи и никакого php не нужно.


У меня Centos-7-x86_64 и ISPManager панель. Даже не представляю, каким образом тут бинарник можно запустить. Думаю это не возможно технически.
1 май 20, 13:30    [22126183]     Ответить | Цитировать Сообщить модератору
 Re: Delphi Rio 10.3 Android получение данных с MySQL  [new]
makhaon
Member

Откуда: A galaxy far far away
Сообщений: 3788
Евгений Стронг,

ssh доступ есть? обычно vps подразумевает ssh насколько я знаю. для линукс-бэка, к слову, тебе хватит полностью бесплатного fpc/lazarus, главное что бы бинари можно было просунуть на хост.

Сообщение было отредактировано: 1 май 20, 13:40
1 май 20, 13:35    [22126186]     Ответить | Цитировать Сообщить модератору
 Re: Delphi Rio 10.3 Android получение данных с MySQL  [new]
Евгений Стронг
Member

Откуда:
Сообщений: 316
makhaon
Евгений Стронг,

ssh доступ есть? обычно vps подразумевает ssh насколько я знаю. для линукс-бэка, к слову, тебе хватит полностью бесплатного fpc/lazarus, главное что бы бинари можно было просунуть на хост.


Доступ по ssh есть. Сейчас почитаю про fpc/lazarus. Спасибо!
1 май 20, 13:55    [22126194]     Ответить | Цитировать Сообщить модератору
 Re: Delphi Rio 10.3 Android получение данных с MySQL  [new]
Евгений Стронг
Member

Откуда:
Сообщений: 316
makhaon
Евгений Стронг,

ssh доступ есть? обычно vps подразумевает ssh насколько я знаю. для линукс-бэка, к слову, тебе хватит полностью бесплатного fpc/lazarus, главное что бы бинари можно было просунуть на хост.


Неа. Нельзя запустить бинарник.
1 май 20, 14:31    [22126218]     Ответить | Цитировать Сообщить модератору
 Re: Delphi Rio 10.3 Android получение данных с MySQL  [new]
rgreat
Member

Откуда:
Сообщений: 6563
makhaon,

Под центос и сама дельфя норм компилирует.
А проги на лазаре - тормозные.

Сообщение было отредактировано: 1 май 20, 15:54
1 май 20, 15:54    [22126267]     Ответить | Цитировать Сообщить модератору
 Re: Delphi Rio 10.3 Android получение данных с MySQL  [new]
makhaon
Member

Откуда: A galaxy far far away
Сообщений: 3788
rgreat,

я как-то особо тормозов на лазарусе для бэка не заметил
1 май 20, 17:54    [22126308]     Ответить | Цитировать Сообщить модератору
 Re: Delphi Rio 10.3 Android получение данных с MySQL  [new]
ПавелZZ
Member

Откуда:
Сообщений: 42
Евгений Стронг

Я ещё вот на такую штуку нарвался сейчас. Дешевле и поинтереснее на мой взгляд.

Евгений, попробовали phprad?
Есть какое-то мнение?
22 янв 21, 09:44    [22267380]     Ответить | Цитировать Сообщить модератору
 Re: Delphi Rio 10.3 Android получение данных с MySQL  [new]
_Vasilisk_
Member

Откуда: Украина, Харьков
Сообщений: 12572
Задам глупый вопрос. А почему бы тупо не открыть порт наружу?
22 янв 21, 10:48    [22267418]     Ответить | Цитировать Сообщить модератору
 Re: Delphi Rio 10.3 Android получение данных с MySQL  [new]
asutp2
Member

Откуда: Тюмень
Сообщений: 729
_Vasilisk_,

ты конечно извини, но порт наружу открывать нельзя категорически.
Во первых, клиенты принципиально должны быть изолированы от прямого доступа к БД, обмен данными исключительно через API промежуточного сервиса.
Во вторых, делать такой подарок всяким нехорошим людям?
22 янв 21, 12:06    [22267503]     Ответить | Цитировать Сообщить модератору
 Re: Delphi Rio 10.3 Android получение данных с MySQL  [new]
_Vasilisk_
Member

Откуда: Украина, Харьков
Сообщений: 12572
asutp2
Во первых, клиенты принципиально должны быть изолированы от прямого доступа к БД
Учитывая уровень знаний автора не думаю, что это имеет особый смысл
asutp2
Во вторых, делать такой подарок всяким нехорошим людям?
Нестандартный порт + устойчивый пароль. Можно было бы еще прикрутить SSL сертификаты, но тогда опять возвращаемся к первому пункту
22 янв 21, 12:58    [22267597]     Ответить | Цитировать Сообщить модератору
 Re: Delphi Rio 10.3 Android получение данных с MySQL  [new]
Евгений Стронг
Member

Откуда:
Сообщений: 316
ПавелZZ
Евгений Стронг

Я ещё вот на такую штуку нарвался сейчас. Дешевле и поинтереснее на мой взгляд.

Евгений, попробовали phprad?
Есть какое-то мнение?


Поставил, попробовал. Не плохой инструмент, но нет туториалов на русском, а так из него можно слепить что-то интересное. А что такое? Необходимо применить где-то?
3 фев 21, 14:37    [22273897]     Ответить | Цитировать Сообщить модератору
 Re: Delphi Rio 10.3 Android получение данных с MySQL  [new]
s62
Member

Откуда: Жуковский
Сообщений: 1255
Евгений Стронг
makhaon
Евгений Стронг,

на сервер передаёшь json-запрос со всеми нужными параметрами. сервер тебе отдаёт назад json-ответ с данными. все запросы к базе делаешь на стороне сервера в php или что там у тебя, там же парсер json и сборщик ответов база > json.


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

Makhaon на мой взгляд дал ответ. Конечно, какие-то знания нужны, но вот для конкретной задачи на мой взгляд не так уж и много.
В php для работы с JSON есть аж целых две функции json_encode и json_decode. И еще две функции обработки ошибок.
Для работы с MySQL есть несколько API, например https://www.php.net/manual/ru/book.mysqli.php
И в документации есть примеры, и в интернете вообще есть материалы по этой теме.
Ну и, понятно, нужны какие-то общие представления о том, как вообще php скрипт на сервере получает запросы и отвечает.

Я задачу типа вашей делал, обновлял каталог изделий. Клиент на Delphi, Indy, для удобства редактирования данных использовал ClientDataset, на сервере несколько скриптов, которые получают запрос от клиента, формируют SQL-запрос к БД и полученный ответ отправляют назад клиенту в виде JSON. Я бы сказал ничего такого особо сложного.

Сообщение было отредактировано: 3 фев 21, 14:59
3 фев 21, 14:58    [22273935]     Ответить | Цитировать Сообщить модератору
 Re: Delphi Rio 10.3 Android получение данных с MySQL  [new]
s62
Member

Откуда: Жуковский
Сообщений: 1255
Евгений Стронг
makhaon
Евгений Стронг,

ssh доступ есть? обычно vps подразумевает ssh насколько я знаю. для линукс-бэка, к слову, тебе хватит полностью бесплатного fpc/lazarus, главное что бы бинари можно было просунуть на хост.


Неа. Нельзя запустить бинарник.
Странно, VPS (virtual private server) это же как бы ваш сервер, только виртуальный, где вы что хотите, то и запускаете. Это на обычном виртуальном хостинге часто бинарники нельзя запускать.
3 фев 21, 15:14    [22273968]     Ответить | Цитировать Сообщить модератору
 Re: Delphi Rio 10.3 Android получение данных с MySQL  [new]
Евгений Стронг
Member

Откуда:
Сообщений: 316
s62
Евгений Стронг
пропущено...


Неа. Нельзя запустить бинарник.
Странно, VPS (virtual private server) это же как бы ваш сервер, только виртуальный, где вы что хотите, то и запускаете. Это на обычном виртуальном хостинге часто бинарники нельзя запускать.


Да, если он виндовый. А тут же своя панель на линухе. Vesta или как у меня ISP Manager.
3 фев 21, 21:52    [22274366]     Ответить | Цитировать Сообщить модератору
 Re: Delphi Rio 10.3 Android получение данных с MySQL  [new]
ПавелZZ
Member

Откуда:
Сообщений: 42
Евгений Стронг
ПавелZZ
пропущено...

Евгений, попробовали phprad?
Есть какое-то мнение?


Поставил, попробовал. Не плохой инструмент, но нет туториалов на русском, а так из него можно слепить что-то интересное. А что такое? Необходимо применить где-то?

Ищу аналог Delphi для разработки web приложений.
Но пока ничего не могу найти.
Все-таки визуальная разработка интерфейса гораздо удобнее, быстрее и нагляднее.
Такое ощущение, что веб разработчики имеют какое-то жуткое предубеждение против визуальных инструментов. :(

Не нашел у них на сайте демо-приложений, созданных на phprad.
5 фев 21, 09:12    [22275275]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Delphi Ответить