UnityWebRequest Post Request не работает - PullRequest
0 голосов
/ 24 марта 2020

Я прошу прощения, потому что я знаю, что этот вопрос задавался ранее, но я не совсем понял решения. Я пытаюсь сделать веб-вызов с Unity (C#) на PHP, чтобы вставить данные в MySQL DB. Он успешно совершает звонок, но не отправляет информацию. У меня реализован следующий код:

        List<IMultipartFormSection> form = new List<IMultipartFormSection>();

        form.Add(new MultipartFormDataSection("namePost", name));
        form.Add(new MultipartFormDataSection("stockPost", stock));
        form.Add(new MultipartFormDataSection("descriptionPost", description));

        UnityWebRequest www = UnityWebRequest.Post(postURL, form);

        yield return www.SendWebRequest();

        if (www.isNetworkError || www.isHttpError)
        {
            Debug.LogError(www.error);
        }

        else
        {
            Debug.Log("Form Upload Completed!");
        }
    }

Я понимаю, что мне нужно сделать запрос в этом формате:

formData.Add(new MultipartFormDataSection("field1=foo&field2=bar"));
formData.Add(new MultipartFormFileSection("my file data", "myfile.txt"));

Но я пробовал разные способы написания этого с помощью нет успеха Заранее спасибо.

Редактировать: Вот мой PHP код, я новичок в этом.

$name = $_POST["namePost"];
$stock = $_POST["stockPost"];
$description = $_POST["descriptionPost"];

$conn = new mysqli($servername, $username, $dbname);
//Check connection
if ($conn->connect_error){
    die("Connection failed: " . $conn->connect_error);
}
$sql = "INSERT INTO products (name, stock, description) VALUES ('$name','$stock','$description')";

$result = $conn->query($sql);
$conn->close();

Редактировать 2: Отредактировал мой C# скрипт, но он все еще не работает: (

        WWWForm form = new WWWForm();
        form.AddField("namePost", name);
        form.AddField("stockPost", stock);
        form.AddField("descriptionPost", description);

        using (UnityWebRequest www = UnityWebRequest.Post(postURL, form))
        {
            yield return www.SendWebRequest();

            if (www.isNetworkError || www.isHttpError)
            {
                Debug.Log(www.error);
            }
            else
            {
                Debug.Log("Form upload complete!");
            }
        }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...