Bon voila, je penses pas que ça soit un bug, (ou alors peut être un mauvais placement de variables dans la programmation)
Je voudrais juste savoir comment tu envois exactement le check quand on envoi des données sur internet.
En fait voila le souci : Erreur lors de la vérification des données.
_Les mots de passes sont identiques dans l’éditeur et dans la variable du fichier config.php
_J’ai d’abord envoyé un ToString(GlobalVariable(Score))
_J’ai ensuite envoyé “bla” et ça fait pareil
_l’adresse est nomdedomaine.fr/dossier/send.php
J’ai affiché indépendamment md5($data1.$mdp) puis md5(“blamotdepasse”) et ça correspond bien l’un à l’autre (donc pas de souci de ce côté).
Mais impossible de faire correspondre à check1
D’ailleurs j’ai remarqué que check2 à 6 sont identiques, seul check1 est différent (pas de valeurs dans GD) donc je suppose que l’envoi depuis le logiciel est un cryptage qui concatène donnée 1 et le mot de passe, puis donnée 2 puis 3 puis 4 ? Peut être un souci de ce côté je ne sais pas ?
Si je peux apporter des éléments supplémentaire faites le savoir ^^
Les données sont envoyées en clair, accompagné d’une donnée de vérification :
Celle ci est constituée par le hash md5 du texte de la donnée avec le mot de passe collé à la fin. Par exemple, si la donnée 1 est “Salut” et le mot de passe est “pwd”, la donnée de vérification 1 sera le hashage md5 de “Salutpwd”.
Voilà le code C++ qui est utilisé si ça t’intéresse :
[code] string data1 = action.GetParameter(2).GetAsTextExpressionResult(scene, objectsConcerned); //On récupère les données
//Pareil pour les autres data…
string data1md5 = md5(data1+action.GetParameter(1).GetPlainString()); //On leur ajoute le mot de passe Et on effectue la somme de contrôle
//Pareil pour les autres data
#ifdef WINDOWS
//Création de l’adresse internet à lancer
string call = “start “” “”+action.GetParameter(0).GetAsTextExpressionResult(scene, objectsConcerned)+
“?data1=”+data1+”&check1="+data1md5+
“&data2=”+data2+"&check2="+data2md5+
“&data3=”+data3+"&check3="+data3md5+
“&data4=”+data4+"&check4="+data4md5+
“&data5=”+data5+"&check5="+data5md5+
“&data6=”+data6+"&check6="+data6md5+"""; #endif
system(call.c_str());[/code]
As tu touché au fichier php ?
Ce que tu peux faire, c’est mettre la donnée envoyée 1 à “bla”, le mot de passe à “pwd”, puis lancer l’action. Ensuite, regarde dans l’adresse le md5 généré ( il s’agit de la partie qui est après check1= ) et vérifie avec un utilitaire sur internet que le md5 de “blapwd” est bien le même que celui ci.
EDIT : J’ai utilisé cette action il y a un certain temps sur ce jeu : compilgames.net/SO4/
Les sources sont disponibles.
J’ai déjà fait ces vérification directement sur la page php (en fait j’ai rajouté dans un creu, echo md5($data1.$mdp)
Et juste en dessous j’ai echo $check1.
Bon ben ça marche, je sais pas quelle erreur j’ai bien pu faire, j’ai mis d’abord pwd comme pass, puis un compliqué, j’ai remis les fichiers de bases aussi.
DOmmage que je sais pas quelle à été mon erreur, mais encore un truc bête surement