• 10 Juillet 2025, 22:32:24


Auteur Sujet: Probleme Dini  (Lu 3446 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne Kiloutre

  • Nolife, nerd et geek passionné d'Ordinatique ! ^^
  • *
  • Grand Banditisme
  • Messages: 567
    • Voir le profil
Probleme Dini
« le: 04 Septembre 2012, 10:46:13 »
Bonjour a tous et a toutes, j'aimerai savoir dans dini comment sauter une ligne (Si possible), et separer des partie de textes pour pouvoir par exemple faire des Statistiques.

J'ai bien regardé le tuto de cristab, mais il explique juste les fonctions, et ce n'est pas ce que je cherche.
« Modifié: 05 Septembre 2012, 15:17:17 par KonVict92x »

[/url]

Hors ligne Xolokos

  • PAWN/XHTML/CSS/PHP/SQL/JS
  • *
  • Grand Banditisme
  • What are you waiting for ?
  • Messages: 681
    • Voir le profil
Re : Information sur Dini
« Réponse #1 le: 04 Septembre 2012, 14:27:17 »
Passer une ligne si je ne me trompe pas c'est bien \n ou bien \r...
Nippah !

Hors ligne Kiloutre

  • Nolife, nerd et geek passionné d'Ordinatique ! ^^
  • *
  • Grand Banditisme
  • Messages: 567
    • Voir le profil
Re : Information sur Dini
« Réponse #2 le: 04 Septembre 2012, 16:00:56 »
Ah donc ca marche dans tous les "BlaBlaBla" merci  :laugh !

Mais ce probleme est deja passer car dini saute des lignes automatiquements...
Mais ne partez pas encore, j'ai encore un probleme !

J'essaye de crée un simple /register et /login mais un probleme survient lorsque je veut recuperer le mot de passe pour le comparer avec celui entrer dans le /login.

Voici mon code (en entier, sisi ;)):


#include <dini>
new pRank[MAX_PLAYERS];
new pRegister[MAX_PLAYERS];

//Dans le OnPlayerConnect
public OnPlayerConnect(playerid)
{
if(pRegister[playerid] == 0)
{
TogglePlayerControllable(playerid,0);
SendClientMessage(playerid, ORANGE, "Faites /register <MOTDEPASSE> pour pouvoir vous connecter !");
}
pRank[playerid] = 1;
new playername[MAX_PLAYER_NAME];
GetPlayerName(playerid, playername, sizeof(playername));
if(!fexist("Stats.txt")) dini_Create("Stats.txt");
dini_Set("Stats.txt","Pseudo", playername);
dini_IntSet("Stats.txt","Rang", pRank[playerid]);
return 1;
}

//Dans le OnPlayerCommandText :

new cmd[128], tmp[128], idx;
cmd = strtok(cmdtext, idx);
if(strcmp(cmd,"/register",true)==0)
{
tmp = strtok(cmdtext, idx);
if(pRegister[playerid] == 1) return SendClientMessage(playerid, ROUGE, "Vous ètes deja enregistrer !");
if(strlen(tmp) == 0) return SendClientMessage(playerid, ROUGE, "Usage : /register <MOTDEPASSE>");
pRegister[playerid] = 1;
dini_Set("Stats.txt","Mot de Passe", tmp);
dini_IntSet("Stats.txt","Enregistrer", pRegister[playerid]);
SendClientMessage(playerid, ORANGE, "Vous vous ètes enregistrer, /login <MOTDEPASSE> pour vous connecter !");
return 1;
}

if(strcmp(cmd,"/login",true)==0)
{
   tmp = strtok(cmdtext, idx);
   new password;
password = dini_Int("Stats.txt","Mot de Passe");
if(strcmp(tmp, password,true)==0) //Ici que le probleme survient
{
TogglePlayerControllable(playerid,1);
SendClientMessage(playerid, VERT, "Vous ètes maintenant connecté !");
}
else return SendClientMessage(playerid, ROUGE, "Erreur, votre mot de passe ne correspond pas !");
   return 1;
}

C'est ici  :laugh
if(strcmp(tmp, password,true)==0) //Ici que le probleme survient
« Modifié: 04 Septembre 2012, 18:26:51 par KonVict92x »

[/url]

Hors ligne Xolokos

  • PAWN/XHTML/CSS/PHP/SQL/JS
  • *
  • Grand Banditisme
  • What are you waiting for ?
  • Messages: 681
    • Voir le profil
Re : Probleme Dini
« Réponse #3 le: 05 Septembre 2012, 17:37:14 »
Pourquoi ne fais tu pas une dialogbox style password ou input c'est beaucoup plus simple et propre ?
Et dans ton code tu oublis de créer le fichier avant d'enregistrer.
Je te conseille d'aller voir mon FS :
http://www.gtaonline.fr/forums/index.php/topic,12815.0.html
Nippah !

Hors ligne cristab

  • *
  • Messages: 8379
    • Voir le profil
Re : Probleme Dini
« Réponse #4 le: 05 Septembre 2012, 18:50:11 »
en meme temps ce systeme pourras gerer un seul compte
pas d'aide en PM, vous êtes sur un forum est il me semble que vous êtes la pour avoir de l'aide donc pourquoi MP une seul personne qui ne vous répondra pas alors qu'il y a plein de membre ici

Hors ligne Kiloutre

  • Nolife, nerd et geek passionné d'Ordinatique ! ^^
  • *
  • Grand Banditisme
  • Messages: 567
    • Voir le profil
Re : Probleme Dini
« Réponse #5 le: 05 Septembre 2012, 19:13:57 »
J'ai deja essayer le style input en essayant de comparer inputtext avec le mot de passe entrer lors du /register mais sans réussite.
Et j'ai modifié le systeme pour qu'il soit pour plusieurs compte, seul le systeme /register /login manque.
Je te l'assure je creer bien le fichier :    if(!fexist("Stats.txt")) dini_Create("Stats.txt");Je vais regarder ton fs pour essayer de faire la meme chose de mon coté, je vous en dirai des nouvelles.

Edit : J'ai bien regarder et j'ai tenter de faire tous en dialogue. Comme je pouvais pas utiliser le inputtext avec dini_IntSet j'ai decider de faire comme toi : "udb_hash" et j'ai bien entendu inclus dudb. Mais des erreurs apparaissent sans raison n'importe ou alors que pourtant le code marchait parfaitement sans dubd...
« Modifié: 05 Septembre 2012, 19:44:28 par KonVict92x »

[/url]

Hors ligne Xolokos

  • PAWN/XHTML/CSS/PHP/SQL/JS
  • *
  • Grand Banditisme
  • What are you waiting for ?
  • Messages: 681
    • Voir le profil
Re : Probleme Dini
« Réponse #6 le: 05 Septembre 2012, 20:43:45 »
udb_hashC'est pour 'formater' le code dans un sens en chiffre pour ne pas ce faire hacker son compte et ce n'est pas réversible, donc sécurisé.
Regarde comment ça marche, mais ne copie pas.
Nippah !

Hors ligne Xartrick

  • *
  • C & Pawn Programmer
  • Messages: 1391
    • Voir le profil
    • Xartrick's Area
Re : Probleme Dini
« Réponse #7 le: 06 Septembre 2012, 03:02:32 »
udb_hashC'est pour 'formater' le code dans un sens en chiffre pour ne pas ce faire hacker son compte et ce n'est pas réversible, donc sécurisé.
Regarde comment ça marche, mais ne copie pas.

Ce n'est absolument pas sécurisé.

Hors ligne Kiloutre

  • Nolife, nerd et geek passionné d'Ordinatique ! ^^
  • *
  • Grand Banditisme
  • Messages: 567
    • Voir le profil
Re : Probleme Dini
« Réponse #8 le: 06 Septembre 2012, 07:36:49 »
Je sais d'ou vient le probleme. Avec dini, je ne peux pas recuperer du texte mais uniquement des nombres. C'est la que le hash intervient.

[/url]

Hors ligne cristab

  • *
  • Messages: 8379
    • Voir le profil
Re : Re : Probleme Dini
« Réponse #9 le: 06 Septembre 2012, 12:53:28 »
Je sais d'ou vient le probleme. Avec dini, je ne peux pas recuperer du texte mais uniquement des nombres. C'est la que le hash intervient.
faux
pas d'aide en PM, vous êtes sur un forum est il me semble que vous êtes la pour avoir de l'aide donc pourquoi MP une seul personne qui ne vous répondra pas alors qu'il y a plein de membre ici

Hors ligne Kiloutre

  • Nolife, nerd et geek passionné d'Ordinatique ! ^^
  • *
  • Grand Banditisme
  • Messages: 567
    • Voir le profil
Re : Probleme Dini
« Réponse #10 le: 06 Septembre 2012, 16:48:02 »
Effectivement je vient de trouver dini_Get dans ton tuto sur le forum samp (et non GTA-ONLINE) mais, je ne m'en sort pas trop...

[/url]

Hors ligne cristab

  • *
  • Messages: 8379
    • Voir le profil
Re : Probleme Dini
« Réponse #11 le: 06 Septembre 2012, 17:16:49 »
il est ici aussi ;)
pas d'aide en PM, vous êtes sur un forum est il me semble que vous êtes la pour avoir de l'aide donc pourquoi MP une seul personne qui ne vous répondra pas alors qu'il y a plein de membre ici

Hors ligne Xolokos

  • PAWN/XHTML/CSS/PHP/SQL/JS
  • *
  • Grand Banditisme
  • What are you waiting for ?
  • Messages: 681
    • Voir le profil
Re : Re : Probleme Dini
« Réponse #12 le: 06 Septembre 2012, 17:42:43 »
udb_hashC'est pour 'formater' le code dans un sens en chiffre pour ne pas ce faire hacker son compte et ce n'est pas réversible, donc sécurisé.
Regarde comment ça marche, mais ne copie pas.

Ce n'est absolument pas sécurisé.

Comment ça, j'ai lu plutôt parcouru on va dire ça ?
Nippah !

Hors ligne Xartrick

  • *
  • C & Pawn Programmer
  • Messages: 1391
    • Voir le profil
    • Xartrick's Area
Re : Probleme Dini
« Réponse #13 le: 07 Septembre 2012, 01:40:13 »
udb_hashC'est pour 'formater' le code dans un sens en chiffre pour ne pas ce faire hacker son compte et ce n'est pas réversible, donc sécurisé.
Regarde comment ça marche, mais ne copie pas.

Ce n'est absolument pas sécurisé.

Comment ça, j'ai lu plutôt parcouru on va dire ça ?

stock udb_hash(buf[]) {
new length=strlen(buf);
new s1 = 1;
new s2 = 0;
new n;
for (n=0; n<length; n++)
{
        s1 = (s1 + buf[n]) % 65521;
        s2 = (s2 + s1) % 65521;
}
return (s2 << 16) + s1;
}

4 bytes pour une fonction de hache, c'est très peu.

Hors ligne Xolokos

  • PAWN/XHTML/CSS/PHP/SQL/JS
  • *
  • Grand Banditisme
  • What are you waiting for ?
  • Messages: 681
    • Voir le profil
Re : Probleme Dini
« Réponse #14 le: 07 Septembre 2012, 20:44:03 »
D'accord mais on peut donc le 'reversé' je sais pas si c'est le bon mot, bref ?
Nippah !