Вместо фотки дайте линк на фотку с авторизацией через телеграмм.
При обращении к фотке - ставьте незаметный "водяной" знак (просто цифру, например) - id, однозначно определяющий имя юзера телеграмм и записывайте в базу id и имя юзера.
Форма - это микроприложение на веб-странице.
Загружаю динамически (всё разом) из отдельной папки: разметку, обработчик, стилизацию.
У всех форм - единая входная точка обработки пользовательских данных.
Советую идти в мобильную НАТИВНУЮ разработку.
Будете сразу делать приложения, взаимодействующие с веб-серверами и использовать все "железки" мобильного устройства по необходимости.
И денег - больше платят за приложение, чем за обычную вёрстку.
UPD: Вам нужно выучить основные принципы обмена данными по сети, чтобы чувствовать себя более увереннее.
Делаете таблицу:
1. URL вызова функции API
2. Назначение
3. Метод вызова
4. Параметры запроса
5. Коды ответа
6. Примеры ответов при удачном исходе
7. Примеры ответов при ошибках
Этим должен заниматься разработчик (архитектор) приложения.
Бэкендщик - только проверяет и корректирует.
Оба - договариваются об общении между сервером и приложением между собой.
With OpenSSL 0.9.6, a new component was added to support alternative
cryptography implementations, most commonly for interfacing with external
crypto devices (eg. accelerator cards). This component is called ENGINE,
and its presence in OpenSSL 0.9.6 (and subsequent bug-fix releases)
caused a little confusion as 0.9.6** releases were rolled in two
versions, a "standard" and an "engine" version. In development for 0.9.7,
the ENGINE code has been merged into the main branch and will be present
in the standard releases from 0.9.7 forwards.
There are currently built-in ENGINE implementations for the following
crypto devices:
o Microsoft CryptoAPI
o VIA Padlock
o nCipher CHIL
In addition, dynamic binding to external ENGINE implementations is now
provided by a special ENGINE called "dynamic". See the "DYNAMIC ENGINE"
section below for details.