En tout cas, merci pour l'aide.
wild-D, ton raisonnement me plait beaucoup dans la mesure ou, enfin, quelqu'un met en évidence le pourquoi de la situation. Tous les tests jusqu'à présent n'ont rien donné de significatif, alors que ton raisonnement tient la route, dans la mesure où on comprend très bien pourquoi le personnage joué se met bien à jour : il reste instancié en session.
Donc c'est bel et bien un problème de mise à jour de BDD et/ou de récupération de données. Par conséquent, je vais appliquer ce que tu m'as conseillé. Je vais envoyer 2 requêtes à la fin du combat, mettant à jour le personnage joué et le personnage cible dans la BDD quasi-intégralement, et supprimer les morceaux de requêtes çà et là dans les methods.
J'ai enfin de la matière à travailler... Merci, et merci à tous les autres qui auront contribué à m'aider en proposant des tests, que je ne connaissais pas et qui me serviront à l'avenir... !
Désolé pour le double post, mais je viens aux nouvelles.
Il y avait en effet une erreur au niveau des requêtes, c'est corrigé.
Donc, j'ai regroupé à la fin d'un combat les deux requêtes mettant à jour la BDD.
J'ai vérifié, la BDD m'affiche exactement les données affichées sur le site, au bon moment et sans retard. Les echanges entre la bdd et le script se font désormais très bien, mais reste le souci de script apparent, avec le retour au niveau 1 du personnage attaqué. J'ai vérifié, il retourne aussi niveau 1 sur la bdd alors que le personnage joué, lui, up très bien, tant sur le site que sur la bdd...
Une idée ?
wild-D, ton raisonnement me plait beaucoup dans la mesure ou, enfin, quelqu'un met en évidence le pourquoi de la situation. Tous les tests jusqu'à présent n'ont rien donné de significatif, alors que ton raisonnement tient la route, dans la mesure où on comprend très bien pourquoi le personnage joué se met bien à jour : il reste instancié en session.
Donc c'est bel et bien un problème de mise à jour de BDD et/ou de récupération de données. Par conséquent, je vais appliquer ce que tu m'as conseillé. Je vais envoyer 2 requêtes à la fin du combat, mettant à jour le personnage joué et le personnage cible dans la BDD quasi-intégralement, et supprimer les morceaux de requêtes çà et là dans les methods.
J'ai enfin de la matière à travailler... Merci, et merci à tous les autres qui auront contribué à m'aider en proposant des tests, que je ne connaissais pas et qui me serviront à l'avenir... !
Désolé pour le double post, mais je viens aux nouvelles.
Il y avait en effet une erreur au niveau des requêtes, c'est corrigé.
Donc, j'ai regroupé à la fin d'un combat les deux requêtes mettant à jour la BDD.
Code :
mysql_query("UPDATE personnages SET experience='".$this->experience."', xp_necessaire='".$this->xp_necessaire."', hp='".$this->hp."', niveau='".$this->niveau."', pt_stat='".$this->pt_stat."' WHERE id='".$this->id."'");
mysql_query("UPDATE personnages SET experience='".$cible->__get(experience)."', xp_necessaire='".$cible->__get(xp_necessaire)."', hp='".$cible->__get(hp)."', niveau='".$cible->__get(niveau)."', pt_stat='".$cible->__get(pt_stat)."' WHERE id='".$cible->__get(id)."'");
J'ai vérifié, la BDD m'affiche exactement les données affichées sur le site, au bon moment et sans retard. Les echanges entre la bdd et le script se font désormais très bien, mais reste le souci de script apparent, avec le retour au niveau 1 du personnage attaqué. J'ai vérifié, il retourne aussi niveau 1 sur la bdd alors que le personnage joué, lui, up très bien, tant sur le site que sur la bdd...
Une idée ?