Получить массив данных из PHP и передать его в переменные C # - PullRequest
0 голосов
/ 23 апреля 2019

У меня есть приложение ac #, которое нужно отправлять и получать с использованием файла 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=showStud&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 #, а затем выведен в виде разбитых строк.Вы можете отправить ответ, если вы знаете, или любое другое решение / учебник, который вы можете дать.Большое спасибо !!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...