#c# #php #mysql #codeigniter
#c# #php #mysql #codeigniter
Вопрос:
У меня есть приложение на c #, которое необходимо отправлять и извлекать с помощью PHP-файла. Затем этот PHP-файл обменивается данными с базой данных, которую приложение использует для своих данных. Моя проблема в том, что я не знаю, как отправлять и получать массив данных между PHP и C #. Ниже приведен мой код, который обрабатывает только одни данные, student_id.
Я пытался найти учебные пособия и решения, и даже API, но никто не мог дать точную помощь, в которой я нуждаюсь.
Вот мой PHP-код:
class CaptureForm{
////LOCAL FUNCTION [->]
private function query($sql, $arg, $fetch = false){
require "config.php";
$q = $db->prepare($sql);
$q->execute($arg);
return $fetch ? $q->fetch(2) : $q;
}
private function getStud($stud_no){
return $this->query("SELECT stud_id FROM tbl_students WHERE stud_id COLLATE latin1_bin LIKE ?", array($stud_no), true)["stud_id"];
}
////LOCAL FUNCTION [<-]
public function ShowStud($stud_no){
if(empty($stud_no)) return "ERROR:MISSING_PARAMETERS";
return $this->query("SELECT first_name FROM tbl_students WHERE stud_id = ?", array($this->getStud($stud_no)), true)["first_name"];
}
////USER FUNCTION [->]
public function CheckWork($stud_no){ //=login
if(empty($stud_no)) return "ERROR:MISSING_PARAMETERS";
return "OK:LOGGED_IN";
}
и это мой код на C #:
private void btn_in_Click(object sender, EventArgs e)
{
if (Execute("CheckWork", "stud_no=" stud_num.Text) == 1)
{
stud_no = stud_num.Text; //To pass it to any other froms (=global)
//same for pass
WebClient fetchInfo = new WebClient();
string studno = fetchInfo.DownloadString("http://localhost/server_api/clog.php?action=showStudamp;stud_no=" stud_no);
if (studno == "Michelle")
{
MessageBox.Show("You are logged in! Yay!", "Logged in", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
MessageBox.Show("You are logged in!", "Logged in", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
}
Оба кода работают очень хорошо, но, как я уже сказал, могут обрабатывать только одни данные.
Я ожидаю, что массив данных будет отправлен на PHP, затем в базу данных и обратно с PHP на C #, а затем выведет его в виде разбитых строк. Вы можете отправить ответ, если знаете, или любое другое решение / руководство, которое вы можете предоставить.
Большое вам спасибо!!
Комментарии:
1. вы можете попробовать создать post для PHP с несколькими элементами и получить обратно некоторый JSON, который вы можете обработать на C#
2. Спасибо за ответ, и да, я тоже пробую этот подход. Но у меня возникли проблемы с поиском правильного решения. Я вижу некоторые, но они не соответствуют моим потребностям, и темы далеки от того, что у меня есть. Итак, может быть, вы можете предоставить мне несколько полезных ссылок, сэр?