ESP, IoT Arduino+php+MySQL = дурдом

Hamgen

✩✩✩✩✩✩✩
9 Авг 2022
14
0
День добрый, уважаемые!

У меня снова глупый вопрос. Гугл с Яндексом уже откровенно меня посылают, поэтому обращаюсь к вам :)

Вообщем надо каким то боком получить определенные данные с базы и получить в esp.
Отправлять как то получаеться,а получать не получается, вообщем голова скоро лопнуть может)
 

Геннадий П

★★★★★★✩
14 Апр 2021
1,975
634
45
Что за база?
Почему ESP, а в заголовке Arduino?
Зачем PHP и MySQL?
Мы сами во всем будем догадываться?
 

Hamgen

✩✩✩✩✩✩✩
9 Авг 2022
14
0
@Геннадий П, Извинясь за не точную формулировку вопроса, просто голова уже не шарит, база mqsql, без использованя php не умею и не знаю как делать
 

Геннадий П

★★★★★★✩
14 Апр 2021
1,975
634
45
Ну, лично я бы сделал через MQTT, а с MQTT каким нть скриптом в зависимости от операционной системы: Python, NodeJS, C#. На скрипте же можно и веб-морду организовать. Получается примерно следующее:
ESP -- WiFi -- MQTT -- Скрипт -- MySQL
 

Hamgen

✩✩✩✩✩✩✩
9 Авг 2022
14
0
Я не сильно понимаю как работает MQTT, но я предполагаю что нужна будет еще одна машина? Которая постоянно работает?
 

Геннадий П

★★★★★★✩
14 Апр 2021
1,975
634
45
@Hamgen, Зачем еще одну? На одну и туже машину ставишь и MySQL, и MQTT, и скрипт.

Если простыми словами, то MQTT организует очередь сообщений. Например подписываешься на какой нть топик(канал), когда изменяются данные(например другим клиентом) то ко всем подписчикам этого топика приходит событие что произошли изменения, по этому событию обрабатываешь полученные данные.
 
  • Лойс +1
Реакции: Wan-Derer

Hamgen

✩✩✩✩✩✩✩
9 Авг 2022
14
0
@Геннадий П, Понял, я просто не силен в теме MQTT, да и вообще навичёк в этой теме, и не сильно разбираюсь в этом)
 

Геннадий П

★★★★★★✩
14 Апр 2021
1,975
634
45
@Hamgen, Ну, тогде тебе предостоит тернистый путь. 😄
На самом деле, MQTT не сложен, как может показаться.
Изучай различные языки программирования. Про PHP забудь, он уже давно потерял актуальность.
 

Hamgen

✩✩✩✩✩✩✩
9 Авг 2022
14
0
@Геннадий П, Спасибо огромное! Пока что только глазком взглянул. Пока остался последний вопрос, Как спросить у mqsql с esp есть ли такой id в таблице и допустим получить имя фамилию и т.д
 

DAK

★★★✩✩✩✩
8 Окт 2020
517
137
У автора мало шансов. В его случае и правда проще натянуть на сервер с mysql apache и php, отправлять get запрос, php на своей стороне этот запрос должен обработать и вернуть инфу, можно даже как объект json.
 

Hamgen

✩✩✩✩✩✩✩
9 Авг 2022
14
0
@DAK, Слушай, подскажи как правильно сделать, третий день голову ломаю.

Готов заплатить) За готовый код
 

Hamgen

✩✩✩✩✩✩✩
9 Авг 2022
14
0
@Normalek, ахринеть реально почему я ее не нашёл

@Normalek, я нафиг сейчас буду прыгать от радости если оно ещё и заработает
 

DAK

★★★✩✩✩✩
8 Окт 2020
517
137
Хорошее дело, только проверьте изначально что mysql доступен на сервере (telnet ipservera 3306), потом не забудьте добавить пользователя в mysql для доступа извне. Я это не просто так говорю, сперва прям подключитесь сторонним ПО типа "heidisql" с обычного компьютера, потом уже пытайтесь с esp. Далее обязательно все запросы, которые Вы придумаете, пишите в serial, через heidisql или phpmyadmin (как Вам удобнее) проверяйте запросы на работоспособность.
 
  • Лойс +1
Реакции: Normalek

Hamgen

✩✩✩✩✩✩✩
9 Авг 2022
14
0
Попробовал подключиться через библиотеку не получилось через программу "heidisql" подключился скрин приложу1660120384684.png
 

DAK

★★★✩✩✩✩
8 Окт 2020
517
137
Ну конечно! Я блин пишу пишу, никто не читает и не понимает..... АлЁЁЁЁ. У Вас на компе MySQL, соответственно вы заходите локально! Для мускула юзер root@localhost и root@"XXX.XXX.XXX.XXX" это 2 разных пользователя. Если на вашем компе мускул, то возмите ноут в той же сети и с него же пробуйте подключаться к вашему компу.
 

Hamgen

✩✩✩✩✩✩✩
9 Авг 2022
14
0
@DAK, был бы ноут попробовал ( Что в этом случае делать ?
 

DAK

★★★✩✩✩✩
8 Окт 2020
517
137
Рыть настройки мускула, для начала надо найти на компе файл с настройками мускула my.cnf ( я только в линуксе делал это, как в винде я не знаю). Далее погуглить про этот файл и сделать так, чтобы ваш сервер работал на всех интерфейсах (если я правильно помню по дефолту там либо localhost либо 127.0.0.1.... надо вместо этого просто поставить *), а не только на локалхосте. Потом вам надо искать в гугле нечто подобное, добавлять через запрос нового пользователя в мускул. Вы в начале пути, желаю Вам удачи!
 

DAK

★★★✩✩✩✩
8 Окт 2020
517
137
Ну не знаю, кому как, плёвое дело, 5 минут. И это только начало, Вам потом предстоит разбираться как правильно делать запросы и как разбирать ответ. Вот тут будет сложно.... Эту дорогу Вы должны пройти сами, раз уж решили поработать с СУБД
 

Hamgen

✩✩✩✩✩✩✩
9 Авг 2022
14
0
@DAK, вам то да но я в деле новичок, поэтому для меня это довольно сложно и не понятно

@DAK, проверил не получилось