Je n'ai aucun problème à créer du code SQL et PHP valide. Je n'ai aucun problème à créer du code C# qui s'exécute en interne.
Mon seul problème est que je n'arrive pas à faire en sorte que mon script C# (depuis Unity, d'ailleurs) transmette une chaîne à ascended.us/monstro/login
C'est tout ! Y a-t-il ici une personne intelligente qui pourrait m’aider à surmonter cet obstacle ennuyeux ?
Merci beaucoup !
J'ai essayé d'obtenir le code suivant pour envoyer le formulaire sur ma page. Oui, Unity envoie des requêtes réseau, mais il ne transmet pas de données de publication. Voici le côté C# des choses.
using UnityEngine; using UnityEngine.Networking; using System.Collections; public class MyBehavior : MonoBehaviour { void Start() { StartCoroutine(Upload()); } IEnumerator Upload() { using (UnityWebRequest www = UnityWebRequest.Post("https://www.ascended.us/monstro/login.php", "{ \"loginUser\": 1, \"field2\": 2 }", "application/json")) { yield return www.SendWebRequest(); if (www.result != UnityWebRequest.Result.Success) { Debug.Log(www.error); } else { Debug.Log("Form upload complete!"); } } } }
Vous trouverez ci-dessous mon script PHP pour accepter C# UnityWebRequest
<? $sqllink = mysqli_connect("localhost", "REDACTED", "REDACTED", "REDACTED"); //THESE ARE VERIFIED TO BE CORRECT if (!$sqllink) {die('Could not connect: ' . mysqli_connect_errno() . ' - ' . mysqli_connect_error());} $loginUser = $_POST["loginUser"]; $query = "INSERT INTO inbound_data (data) VALUES('$loginUser')"; mysqli_query($sqllink, $query); ?>
Je sais que ce script n'est pas sécurisé, alors traitez-le comme une application Hello World. Lorsque j'exécute le script, ce qui finit par se produire, c'est qu'il insère une valeur dans ma table SQL, mais la valeur est vide, indiquant que la variable de publication n'a pas été transférée. peux-tu aider ?
Peut-être ai-je besoin d’une sorte d’autorisation ? J'utilise BlueHost si cela peut aider. Un incontournableIl existe un moyen simple d'envoyer ces données de publication depuis C# vers ma page PHP ! J'ai essayé d'autres tutoriels et réponses similaires sur ce site (et bien d'autres) mais ils ne fonctionnent pas.
Le script C# semble convenir pour envoyer la requête POST, mais les données que le script PHP reçoit semblent être au mauvais format. Dans votre UnityWebRequest, vous envoyez des données JSON, mais votre script PHP essaie d'accéder à
$_POST["loginUser"]
, qui concerne les données de formulaire normales, pas les données JSON.Vous pouvez modifier le script C# pour envoyer les données sous forme de données de formulaire comme ceci :
Dans un script PHP, vous pouvez accéder aux données en utilisant
$_POST
:Avec le code modifié, vous pouvez envoyer des données POST sous forme de données de formulaire depuis Unity et vos scripts PHP peuvent accéder correctement aux variables POST en utilisant
$_POST["loginUser"]
.Si vous rencontrez toujours des problèmes, n'hésitez pas à me le faire savoir.