Я прошу прощения, потому что я знаю, что этот вопрос задавался ранее, но я не совсем понял решения. Я пытаюсь сделать веб-вызов с 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!");
}
}