Здравствуйте, TailWind, Вы писали:
TW>Программа -> http -> php -> mysql insert -> mysql ответ -> *** php ответ -> *** http ответ -> программа
TW>Если там, где *** произойдёт обрыв связи, то программа подумает, что запись не вставлена в бд и повторит добавление, что приведёт к появлению дубля в бд
TW>Как это решается?
Обычно это решается через REST. Где-то у Sinclair было подробное объяснение о REST, вроде вот этого
Протокол HTTP, но другое. Поищите по его сообщениям.
Общая идея — клиент генерирует GUID и указывает его в запросе, все запросы исполняются с проверкой, что такого GUID в совершённых операциях ещё не было.
Это очень грубое и поверхностное объяснение.