Salut. En gros avec le model MVC et php etc.. j'imagine que tu suis un petit peu une methode qui fait que tu melanges pas mal le php et ton html n'est ce pas ? En gros, juste pour te donner des pistes en termes d'amelioration de developement de systemes, aujourd'hui on fait du "decoupling". En gros ca veut dire que tu veux que ce que tu vois sur ton ecran, ton jeu, soit complement independant de ton back-end, ca parait bizarre au debut mais imagine que tu fasses ton jeu en html et android, tu aimerais que les deux communiquent pareillement vers exactement le meme backend, c'est une premiere etape du decoupling.
Je te parle de ca pour repondre a ta question exactement. La, tu as ton html qui est en parti genere par ton php et tu aimerais que via ton js, les donnees de tes utilisateurs soient enregistres. Pour ca, tu vas devoir creer un "endpoint" dans ton backend, y envoyer des donnees et que ton backend fasse le taf.
Vu que tu utilises js vanilla (pas de framework, a la limite jquery), ajax est ton ami pour ca, tu vas pouvoir faire ca de maniere "asynchrone".
En gros voila comment ca marche. Tu vas definir un endpoint, par exemple. localhost:8080/my_game/save_data.php
et dans save_data.php
tu vas attendre des requetes POST contenant un json de ton utilisateur contenant toutes les infos que tu souhaites enregistrer. Par exemple, il peut ressembler a ca:
{
name: "Jean",
age: 18,
user_id: "fjbl3n4lb45jp9uo98pon2lk3n1lk23paw8eqpwe8p1oj3",
}
Et pour envoyer ca depuis ton js, avec ajax, tu feras un truc comme ca:
$.ajax({
type: "POST",
url: "/my_game/save_data.php",
data: JSON.stringify({name: "Jean",
age: 18,
user_id: "fjbl3n4lb...",
}),
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(data){alert(data);},
error: function(errMsg) {
alert(errMsg);
}
});
Et la, ton backend devra traiter ta requete et renvoyer une reponse. Generalement, dans ce genre de cas, ta reponse est vide et tu utilises juste un code http pour verifier que tout a marche:
- 200 = tout est bon
- 401 = ton utilisateur est inconnu
- 500 = ton serveur a foire qqpart