Я создаю сайт PHP, подключенный к базе данных MySQL. Затем мне нужно будет написать настольное приложение C#, которое будет использовать тот же БД. К сожалению, я не могу напрямую подключиться к БД из удаленного места, и моя хостинговая компания не разрешит SSH.PHP-C# двусторонняя связь
Итак, какие у меня варианты? Если хостинговая компания поддерживает .NET, это не будет проблемой, но я не настолько разбираюсь в PHP. Должен ли я написать PHP-сервис (SOAP?), А затем использовать его в своем настольном приложении? Кроме того, как мне взаимодействовать с сервером из настольного приложения?
Любая помощь оценена!
Наличие SQL как параметра String - плохая идея, поскольку это сделает легкую мишень для инъекций, и это просто плохая практика, даже если она находится между локальными серверами. Скорее поставляйте SOAP-сервисы, которые возвращают требуемые объекты/строки или данные и не отправляют SQL на ваш веб-сервер. – Kolky
Мне нравится этот ответ лучше всего, однако я беспокоюсь об инъекции, как заметил Колки. Но тогда я не уверен, что Колки означает по второму предложению - как я могу сказать серверу, что вставить в БД, если не по строкам запроса? – jkottnauer
@Kolky Вот почему я поставил оговорку о безопасности там - не может быть абсолютно никакого риска SQL-инъекции для всего, что я знаю. Кроме того, просто потому, что упрощение SQL-инъекции не означает, что он не смог разобрать методы инъекций из любых параметров или передать параметры через отдельные аргументы и применять их в качестве параметризованных запросов в самом PHP. SOAP - это боль задница откровенно, а не сама по себе, более безопасная, чем веб-страница с использованием String. –