#c# #php #sql
#c# #php #sql
Вопрос:
Я извлекаю некоторые пользовательские данные с форума phpbb3 с помощью скриптов на сервере. Моя база данных не допускает внешнего входа в систему, поэтому мне нужно выполнить какой-то скрипт.
Но я хотел бы знать, существует ли достаточно безопасный способ получения этих данных? Я знаю, как выводить некоторый XML с помощью операторов echo, но я не уверен, так ли это безопасно, как должно быть?
Оптимальным методом было бы (псевдокод)
$array['user_id'] = $id;
$array['otherinfo'] = $var
return $array;
если бы я мог каким-то образом прочитать этот массив с помощью C #, это было бы намного проще, но я не уверен, как это будет работать с WebResonses или еще что-то.
Есть идеи?
Ответ №1:
Вам нужен веб-сервис, который будет выводить ваши ответы в некотором формате, который вы можете проанализировать с помощью C #.
Php и C # несовместимы, поэтому вам нужно будет создать службу, которая может использовать эти сообщения.
Первый вариант, как я уже сказал, — создать веб-сервис, который может использовать код C #. В этом случае ваш код C # должен знать, что запрашивать у вашего веб-сервиса php, и вы ответите на запрос в формате XML, или JSON, или в любом другом формате, который вы хотите использовать в своем коде C # для его анализа.
Другой вариант — отправить данные в веб-службу, использующую C #. Вам нужно написать WCF / веб-службу, и вы можете передавать данные в эту службу.
Комментарии:
1. Хорошо, я уверен, что это аккуратный способ сделать это. Хотя я не очень хорошо знаком ни с тем, ни с другим. Будут ли они выполняться моим сервером и, в свою очередь, смогут подключаться к базе данных? В примере..
2. да, вам нужно разместить их в своем веб-сервисе.
Ответ №2:
Я предлагаю вам предоставить вывод вашего массива в виде xml или json. Если мы примем во внимание xml, вы можете вызвать php-файл, который выдает xml-вывод следующим образом:
XDocument.Load("http://whatever.com/whatever.php");
И, конечно, вам нужно добавить заголовок System.Xml.Linq, чтобы использовать класс XDocument. А также вы можете передать хэшированный ключ и т. Д. Из строки запроса, Чтобы подтвердить, что запрошенное поступает из вашего приложения.
Комментарии:
1. Хорошо, я сначала попробую это сделать, так как для быстрого тестирования требуется меньше работы. Пока спасибо
2. @Garrador надеюсь, это вам поможет.