Насколько я понимаю, вы хотите:
- веб-сайт / веб-приложение, имеющее логин
- настольное приложение (не на PHP!), Входящее в систему с использованием того же метода входа
Один из способов - экспортировать метод входа в систему с использованием одного и того же API-интерфейса как на вашем веб-сайте, так и в удаленном приложении, поэтому вы будете использовать JavaScript на стороне клиента для доступа к API оттуда (AJAX / JSON). Вы захотите использовать для этого какую-то инфраструктуру, такую как jQuery для упрощения AJAX на стороне клиента (среди многих других применений) и, возможно, модуль JSON в PHP (для использования json_encode; имейте в виду, что модуль может быть недоступен в некоторых веб-пространствах, так что если это из-под контроля не используйте его). Конечно, вам не нужно использовать XML или JSON в ваших ответах API, но проще открыть API для других (включая настольных) приложений без необходимости вручную реализовывать множество функций синтаксического анализа для обработки ответа в ваших интерфейсных классах.
Имейте в виду, что ваш сайт / веб-приложение не будет работать без JavaScript, если вы сделаете это таким образом! В непубличных частях веб-сайта это нормально, как в случае веб-приложения, используемого известной группой пользователей, но вы не должны зависеть от сценариев на стороне клиента для открытых частей веб-сайта.
Еще одно решение для упрощения, которое заключается в использовании PHP-фреймворка, так что вы можете проще писать на стороне сервера. Это в основном позволит вам назначить кнопке серверную функцию, которая просто вызывает ваш метод входа и действует соответствующим образом, устанавливая перенаправление или заменяя некоторую панель или все, что вы хотите продолжить после входа в систему.
Конечно, вы можете сделать все это самостоятельно, но это, как правило, приведет либо к большому количеству грязного кода, либо к реализации вашей собственной инфраструктуры. Если вы хотите сделать это самостоятельно, начните с публикации формы в том же файле PHP вместо дополнительного login.php и добавьте скрытое поле, например:
<input type="hidden" name="action" value="login"></input>
В PHP отметьте $_POST['action']=='login'
и вызовите метод входа в систему.
Редактировать: Хотя ваш веб-сайт будет работать с сеансом PHP или файлом cookie, вы можете отслеживать состояние входа с помощью собственного токена сеанса, который вы можете передать в настольное приложение, чтобы его можно было использовать для последовательные вызовы API, поэтому вам не нужно обрабатывать куки. Эти токены также должны быть привязаны к IP и, возможно, к другой «индивидуальной» информации клиента; в идеале эта информация должна быть зашифрована в токен или токен зашифрован (клиентская сторона не должна будет «расшифровывать» это, просто верните ее для аутентификации). Токены также должны быть отключены после бездействия.
Также, прочитав ваш старый вопрос, я боюсь, что вы можете попытаться сделать что-то плохое, например, отправить хеш по сети и просто проверить , что хеш, с вашей пользовательской таблицей, потому что там обсуждалась кодировка на стороне JS , Если вы хотите реализовать какой-либо алгоритм шифрования на стороне клиента, либо убедитесь, что он безопасен (это трудно сделать, если вы не занимаетесь криптографией), либо прибегните к SSL.