Erwan

Erreur enum

45 messages dans ce sujet

Il y a 3 heures, Erwan a dit :

Ça fait la même chose lorsque je lance le serveur

 

 

EDIT: J'ai réussis, cela venait de la version du mysql.dll qui n'étais pas bon.

Cependant, a chaque connexion, ça demande au joueur de s'inscrire alors qu'il s'inscrit bien dans la DB.

En gros, une fois inscris, au lieu d'afficher le dialog connexion, il re-affiche le dialogue Inscription :/

En faite, tu n'as strictement aucune base en pawn et tu essayes de lancer un GM télécharger sur internet ? :S 

Partager ce message


Lien à poster
Partager sur d’autres sites
il y a 25 minutes, Dayrion a dit :

En faite, tu n'as strictement aucune base en pawn et tu essayes de lancer un GM télécharger sur internet ? :S 

 

Non, il est fait de 0 (de base creer pour l'alimenter de mes mappings et tester 2/3 truc en script) et je me suis dit pourquoi pas tenter de faire cette DB, certes, sans énorme connaissance en pawn, seulement des bases c'est pour cela que je demande de l'aide.

(Jpeut montrer le GM si besoin)

Je me suis aider de ce tutoriel si jamais: http://forum.sa-mp.com/showthread.php?t=589797

Modifié par Erwan

Partager ce message


Lien à poster
Partager sur d’autres sites
Il y a 7 heures, Erwan a dit :

 

Non, il est fait de 0 (de base creer pour l'alimenter de mes mappings et tester 2/3 truc en script) et je me suis dit pourquoi pas tenter de faire cette DB, certes, sans énorme connaissance en pawn, seulement des bases c'est pour cela que je demande de l'aide.

(Jpeut montrer le GM si besoin)

Je me suis aider de ce tutoriel si jamais: http://forum.sa-mp.com/showthread.php?t=589797

D'acc. 

Montre nous VerificationCompte en entier, pas des bouts de codes par-ci, par-là. ;) 

Partager ce message


Lien à poster
Partager sur d’autres sites
Il y a 17 heures, Dayrion a dit :

D'acc. 

Montre nous VerificationCompte en entier, pas des bouts de codes par-ci, par-là. ;) 

 

Merci de ton aide, le voici:

 

forward VerificationCompte(playerid);
public VerificationCompte(playerid)
{
	new lignes, champs;
	cache_get_data(lignes, champs, mysql); 
	if(lignes) 
{
	cache_get_field_content(0, "MDP", iJoueur[playerid][MDP], mysql, 66); // Transfère le contenu de MDP de notre BDD et l'assigne à iJoueur[playerid][MDP]
	iJoueur[playerid][ID] = cache_get_field_content_int(0, "ID"); // Transfère le contenu de ID de notre BDD et l'assigne à iJoueur[playerid][ID]
	ShowPlayerDialog(playerid, DialogConnection, DIALOG_STYLE_PASSWORD, "Connection...", "Tapez votre mot de passe pour vous connecter", "Connecter", "Quitter"); 
}
	else 
{
	ShowPlayerDialog(playerid, DialogInscription, DIALOG_STYLE_INPUT, "Inscription...", "Tapez un mot de passe pour inscrire ce compte.", "S'inscrire", "Quitter");
}
}

Je viens de remarquer qu'il manquait peut être un return quelque part ?

Modifié par Erwan

Partager ce message


Lien à poster
Partager sur d’autres sites

Tu as essayé de debug ton script ou même de regarder les logs SQL?

Partager ce message


Lien à poster
Partager sur d’autres sites
Le 15/12/2017 à 01:46, Dayrion a dit :

Tu as essayé de debug ton script ou même de regarder les logs SQL?

 

 

Salut, je vient de regarder les logs SQL et voici ce que j'ai:

[15:22:47] [DEBUG] mysql_connect - host: "localhost", user: "root", database: "servtest", password: "****", port: 3306, autoreconnect: true, pool_size: 2
[15:22:47] [DEBUG] CMySQLHandle::Create - creating new connection..
[15:22:47] [DEBUG] CMySQLHandle::CMySQLHandle - constructor called
[15:22:47] [DEBUG] CMySQLHandle::Create - connection created (id: 1)
[15:22:47] [DEBUG] CMySQLConnection::Connect - establishing connection to database...
[15:22:47] [DEBUG] CMySQLConnection::Connect - connection was successful
[15:22:47] [DEBUG] CMySQLConnection::Connect - auto-reconnect has been enabled
[15:22:47] [DEBUG] mysql_errno - connection: 1
[15:22:47] [DEBUG] CMySQLConnection::Connect - establishing connection to database...
[15:22:47] [DEBUG] CMySQLConnection::Connect - establishing connection to database...
[15:22:47] [DEBUG] CMySQLConnection::Connect - connection was successful
[15:22:47] [DEBUG] CMySQLConnection::Connect - auto-reconnect has been enabled
[15:22:47] [DEBUG] CMySQLConnection::Connect - connection was successful
[15:22:47] [DEBUG] CMySQLConnection::Connect - auto-reconnect has been enabled
[15:22:47] [DEBUG] CMySQLConnection::Connect - connection was successful
[15:22:47] [DEBUG] CMySQLConnection::Connect - auto-reconnect has been enabled
[15:23:41] [DEBUG] mysql_format - connection: 1, len: 50, format: "SELECT `MDP`, `ID` FROM `Joueurs` WHERE `Pseudo` = '%e' LIMIT 1"
[15:23:41] [ERROR] mysql_format - destination size is too small
[15:23:41] [DEBUG] mysql_tquery - connection: 1, query: "SELECT `MDP`, `ID` FROM `Joueurs` WHERE `Pseudo` ", callback: "VerificationCompte", format: "i"
[15:23:41] [DEBUG] CMySQLQuery::Execute[VerificationCompte] - starting query execution
[15:23:41] [DEBUG] CMySQLQuery::Execute[VerificationCompte] - query was successfully executed within 855.426 milliseconds
[15:23:41] [DEBUG] CMySQLResult::CMySQLResult() - constructor called
[15:23:41] [DEBUG] Calling callback "VerificationCompte"..
[15:23:41] [DEBUG] cache_get_data - connection: 1
[15:23:41] [DEBUG] CMySQLResult::~CMySQLResult() - deconstructor called
[15:23:46] [DEBUG] mysql_format - connection: 1, len: 256, format: "INSERT INTO `Joueurs` (`Pseudo`, `MDP`) VALUES ('%e', '%e')"
[15:23:46] [DEBUG] mysql_tquery - connection: 1, query: "INSERT INTO `Joueurs` (`Pseudo`, `MDP`) VALUES ('Erwan115',", callback: "CreationCompte", format: "i"
[15:23:46] [DEBUG] CMySQLQuery::Execute[CreationCompte] - starting query execution
[15:23:46] [DEBUG] CMySQLQuery::Execute[CreationCompte] - query was successfully executed within 150.671 milliseconds
[15:23:46] [DEBUG] CMySQLResult::CMySQLResult() - constructor called
[15:23:46] [DEBUG] Calling callback "CreationCompte"..
[15:23:46] [DEBUG] cache_insert_id - connection: 1
[15:23:46] [DEBUG] CMySQLResult::~CMySQLResult() - deconstructor called

[15:23:41] [ERROR] mysql_format - destination size is too small

 

Sinon non, je n'ai pas "debug" le script comme tu l'a dit, en quoi cela consiste ?

Modifié par Erwan

Partager ce message


Lien à poster
Partager sur d’autres sites

Ta requète est plus longue que se que tu donne dans ta variable passe ton code de cette ligne " 

"INSERT INTO `Joueurs` (`Pseudo`, `MDP`) VALUES ('%e', '%e')""

 

Modifié par Marcus62

Partager ce message


Lien à poster
Partager sur d’autres sites
Il y a 11 heures, Marcus62 a dit :

Ta requète est plus longue que se que tu donne dans ta variable passe ton code de cette ligne " 

"INSERT INTO `Joueurs` (`Pseudo`, `MDP`) VALUES ('%e', '%e')""

 

 

Salut, voici avec des commentaires pour te montrer où ça commence & quand ça finit:

Je tes donner le code d'ensemble du "public OnDialogResponse" au cas où que ça viendrait pas que du bout de code que tu as demander

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
	if(dialogid == DialogInscription)
{
	if(!response) return Kick(playerid); 
 	if(strlen(inputtext) < 5) 
{
	SendClientMessage(playerid, -1, "Votre mot de passe doit contenir au moins 5 charactères"); 
	ShowPlayerDialog(playerid, DialogInscription, DIALOG_STYLE_INPUT, "Inscription...", "Tapez un mot de passe pour inscrire ce compte.", "S'inscrire", "Quitter");
}
	else // ça commence ici
{
	new hashpass[64+1];
	new query[256];
 	GetPlayerName(playerid, iJoueur[playerid][Pseudo], MAX_PLAYER_NAME);
	SHA256_PassHash(inputtext, "ADAWAD11AWD41ASDA2L222KDH", hashpass, sizeof(hashpass));
 	mysql_format(mysql, query, sizeof(query), "INSERT INTO `Joueurs` (`Pseudo`, `MDP`) VALUES ('%e', '%e')", iJoueur[playerid][Pseudo], hashpass); 
	mysql_tquery(mysql, query, "CreationCompte", "i", playerid);
}
	return 1; // ça finit ici
 }
	{
 	if(dialogid == DialogConnection)
{
	if(!response) return Kick(playerid); 
	new hashpass[64+1];
	SHA256_PassHash(inputtext, "ADAWAD11AWD41ASDA2L222KDH", hashpass, sizeof(hashpass));
	if(!strcmp(hashpass, iJoueur[playerid][MDP], true)) 
{
	new requete[100];
	mysql_format(mysql, requete, sizeof(requete), "SELECT * FROM `Joueurs` WHERE `Pseudo` = '%e' LIMIT 1", iJoueur[playerid][Pseudo]); 
	mysql_tquery(mysql, requete, "ChargerCompte", "i", playerid);
}
	else 
{
	SendClientMessage(playerid, -1, "Mot de passe incorrect, essayer encore!"); 
	ShowPlayerDialog(playerid, DialogConnection, DIALOG_STYLE_PASSWORD, "Connection...", "Tapez votre mot de passe pour vous connecter", "Connecter", "Quitter");
}
 	return 1;
}
 	if(dialogid == dialogid1)
    {
        if(response)
        {
            switch(listitem)
            {
                case 0: SetPlayerPos(playerid, 290.9675,2529.1401,249.4671), SendClientMessage(playerid, -1, "{583405}[Info]{B66906} Bienvenue au mapping nommé -Bureau- !");
                case 1: SetPlayerPos(playerid, -710.6744,267.8643,1.6860), SendClientMessage(playerid, -1, "{583405}[Info]{B66906} Bienvenue au mapping nommé -Soirée !");
                case 2: SetPlayerPos(playerid, -207.1890,2304.1289,701.8500), SendClientMessage(playerid, -1, "{583405}[Info]{B66906} Bienvenue au mapping nommé -Tabac/Bar de Flo- !");
                case 3: SetPlayerPos(playerid, 1771.1674,1590.3098,1001.2980), SendClientMessage(playerid, -1, "{583405}[Info]{B66906} Bienvenue au mapping nommé -Maison !");
				case 4: SetPlayerPos(playerid, 2521.0635,-1286.3047,995.1646), SendClientMessage(playerid, -1, "{583405}[Info]{B66906} Bienvenue au mapping nommé -Imprimerie!");
			}
        }
 		return 1;
	}
 }
	return 0;
}

 

Modifié par Erwan

Partager ce message


Lien à poster
Partager sur d’autres sites
	else // ça commence ici
{
	new hashpass[64+1];
	new query[512]; //je pense que le problème viens d'ici, j'ai mis 512 
 	GetPlayerName(playerid, iJoueur[playerid][Pseudo], MAX_PLAYER_NAME);
	SHA256_PassHash(inputtext, "ADAWAD11AWD41ASDA2L222KDH", hashpass, sizeof(hashpass));
 	mysql_format(mysql, query, sizeof(query), "INSERT INTO `Joueurs` (`Pseudo`, `MDP`) VALUES ('%e', '%e')", iJoueur[playerid][Pseudo], hashpass); 
	mysql_tquery(mysql, query, "CreationCompte", "i", playerid);
}
	return 1; // ça finit ici

Essaie comme sa et dit moi si sa fonctionne 

Partager ce message


Lien à poster
Partager sur d’autres sites
il y a une heure, Marcus62 a dit :
	else // ça commence ici
{
	new hashpass[64+1];
	new query[512]; //je pense que le problème viens d'ici, j'ai mis 512 
 	GetPlayerName(playerid, iJoueur[playerid][Pseudo], MAX_PLAYER_NAME);
	SHA256_PassHash(inputtext, "ADAWAD11AWD41ASDA2L222KDH", hashpass, sizeof(hashpass));
 	mysql_format(mysql, query, sizeof(query), "INSERT INTO `Joueurs` (`Pseudo`, `MDP`) VALUES ('%e', '%e')", iJoueur[playerid][Pseudo], hashpass); 
	mysql_tquery(mysql, query, "CreationCompte", "i", playerid);
}
	return 1; // ça finit ici

Essaie comme sa et dit moi si sa fonctionne 

 

Une fois compiler, voilà ce que ça me ressort:

 

C:\Users\Erwan\Desktop\serv truc\gamemodes\test.pwn(403) : warning 209: function "OnDialogResponse" should return a value
C:\Users\Erwan\Desktop\serv truc\gamemodes\test.pwn(404) : error 010: invalid function or declaration
Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


1 Error.
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
	if(dialogid == DialogInscription)
{
	if(!response) return Kick(playerid); // Si le joueur clique sur "Quitter" on va la Kicker du serveur
 	if(strlen(inputtext) < 5) // Si le MDP inséré fais moins de 5 charactères
{
	SendClientMessage(playerid, -1, "Votre mot de passe doit contenir au moins 5 charactères"); // On lui envoye un message disant que le MDP doit contenir au moins 5 charactères.
	ShowPlayerDialog(playerid, DialogInscription, DIALOG_STYLE_INPUT, "Inscription...", "Tapez un mot de passe pour inscrire ce compte.", "S'inscrire", "Quitter"); // On lui remontre le dialogue.
}
	else // ça commence ici
{
	new hashpass[64+1];
	new query[512]; //je pense que le problème viens d'ici, j'ai mis 512
 	GetPlayerName(playerid, iJoueur[playerid][Pseudo], MAX_PLAYER_NAME);
	SHA256_PassHash(inputtext, "ADAWAD11AWD41ASDA2L222KDH", hashpass, sizeof(hashpass));
 	mysql_format(mysql, query, sizeof(query), "INSERT INTO `Joueurs` (`Pseudo`, `MDP`) VALUES ('%e', '%e')", iJoueur[playerid][Pseudo], hashpass);
	mysql_tquery(mysql, query, "CreationCompte", "i", playerid);
}
	return 1; // ça fini ici
}
 	if(dialogid == DialogConnection)
{
	if(!response) return Kick(playerid); // Si le joueur appuie sur "Quitter" on le Kick du serveur.
	new hashpass[64+1];
	SHA256_PassHash(inputtext, "ADAWAD11AWD41ASDA2L222KDH", hashpass, sizeof(hashpass));
	if(!strcmp(hashpass, iJoueur[playerid][MDP], true)) // Si le MDP inséré est égal au MDP de la BDD
{
	new requete[100];
	mysql_format(mysql, requete, sizeof(requete), "SELECT * FROM `Joueurs` WHERE `Pseudo` = '%e' LIMIT 1", iJoueur[playerid][Pseudo]); // On prend la ligne ou le nom est égal au nom du joueur
	mysql_tquery(mysql, requete, "ChargerCompte", "i", playerid); // On envoye la requete.
}
	else // Si le MDP inséré n'est pas égal au MDP de la BDD
{
	SendClientMessage(playerid, -1, "Mot de passe incorrect, essayer encore!"); // On envoie le message disant que le MDP est incorrect!
	ShowPlayerDialog(playerid, DialogConnection, DIALOG_STYLE_PASSWORD, "Connection...", "Tapez votre mot de passe pour vous connecter", "Connecter", "Quitter"); // On lui remontre le dialogue
}
}
  	if(dialogid == dialogid1)
    {
        if(response)
        {
            switch(listitem)
            {
                case 0: SetPlayerPos(playerid, 290.9675,2529.1401,249.4671), SendClientMessage(playerid, -1, "{583405}[Info]{B66906} Bienvenue au mapping nommé -Bureau- !");
                case 1: SetPlayerPos(playerid, -710.6744,267.8643,1.6860), SendClientMessage(playerid, -1, "{583405}[Info]{B66906} Bienvenue au mapping nommé -Soirée !");
                case 2: SetPlayerPos(playerid, -207.1890,2304.1289,701.8500), SendClientMessage(playerid, -1, "{583405}[Info]{B66906} Bienvenue au mapping nommé -Tabac/Bar de Flo- !");
                case 3: SetPlayerPos(playerid, 1771.1674,1590.3098,1001.2980), SendClientMessage(playerid, -1, "{583405}[Info]{B66906} Bienvenue au mapping nommé -Maison !");
				case 4: SetPlayerPos(playerid, 2521.0635,-1286.3047,995.1646), SendClientMessage(playerid, -1, "{583405}[Info]{B66906} Bienvenue au mapping nommé -Imprimerie!");
			}
        }
 		return 1;
}
 	return 0;
}

 

Je pense que j'ai un gros soucis avec les return :/

Vu que je viens de remarquer qu'IG avant de mettre ce que tu as essayer de faire, tout est mélanger, par exemple si je fait (/mapping) : Permettant d'ouvrir le dialog et que je clique sur le mapping souhaiter, ça me téléporte au spawn du joueur & ça me mettait ce message: Vous êtes maintenant connecté et vous pouvez jouer tranquillement. qui se trouve dans le foward "ChargerCompte"

Et ça creer également des comptes dans la DB dès que je clique sur le mapping où je veut être TP

J'ai du faire un gros méli-mélo là dedans O.o

Modifié par Erwan

Partager ce message


Lien à poster
Partager sur d’autres sites

essaie sa, je suit sur tel compliqué

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
	if(dialogid == DialogInscription)
	{
		if(!response) return Kick(playerid); // Si le joueur clique sur "Quitter" on va la Kicker du serveur
 		if(strlen(inputtext) < 5) // Si le MDP inséré fais moins de 5 charactères
		{
			SendClientMessage(playerid, -1, "Votre mot de passe doit contenir au moins 5 charactères"); // On lui envoye un message disant que le MDP doit contenir au moins 5 charactères.
			ShowPlayerDialog(playerid, DialogInscription, DIALOG_STYLE_INPUT, "Inscription...", "Tapez un mot de passe pour inscrire ce compte.", "S'inscrire", "Quitter"); // On lui remontre le dialogue.
            return 1;
		}
		else // ça commence ici
		{
			new hashpass[64+1];
			new query[512]; //je pense que le problème viens d'ici, j'ai mis 512
		 	GetPlayerName(playerid, iJoueur[playerid][Pseudo], MAX_PLAYER_NAME);
			SHA256_PassHash(inputtext, "ADAWAD11AWD41ASDA2L222KDH", hashpass, sizeof(hashpass));
		 	mysql_format(mysql, query, sizeof(query), "INSERT INTO `Joueurs` (`Pseudo`, `MDP`) VALUES ('%e', '%e')", iJoueur[playerid][Pseudo], hashpass);
			mysql_tquery(mysql, query, "CreationCompte", "i", playerid);
            return 1;
		}
		return 1; // ça fini ici
	}
 	if(dialogid == DialogConnection)
	{
		if(!response) return Kick(playerid); // Si le joueur appuie sur "Quitter" on le Kick du serveur.
		new hashpass[64+1];
		SHA256_PassHash(inputtext, "ADAWAD11AWD41ASDA2L222KDH", hashpass, sizeof(hashpass));
		if(!strcmp(hashpass, iJoueur[playerid][MDP], true)) // Si le MDP inséré est égal au MDP de la BDD
		{
			new requete[100];
			mysql_format(mysql, requete, sizeof(requete), "SELECT * FROM `Joueurs` WHERE `Pseudo` = '%e' LIMIT 1", iJoueur[playerid][Pseudo]); // On prend la ligne ou le nom est égal au nom du joueur
			mysql_tquery(mysql, requete, "ChargerCompte", "i", playerid); // On envoye la requete.
            return 1;
		}
		else // Si le MDP inséré n'est pas égal au MDP de la BDD
		{
			SendClientMessage(playerid, -1, "Mot de passe incorrect, essayer encore!"); // On envoie le message disant que le MDP est incorrect!
			ShowPlayerDialog(playerid, DialogConnection, DIALOG_STYLE_PASSWORD, "Connection...", "Tapez votre mot de passe pour vous connecter", "Connecter", "Quitter"); // On lui remontre le dialogue
            return 1;
		}
		return 1;
	}
  	if(dialogid == dialogid1)
    {
        if(response)
        {
            switch(listitem)
            {
                case 0: SetPlayerPos(playerid, 290.9675,2529.1401,249.4671), SendClientMessage(playerid, -1, "{583405}[Info]{B66906} Bienvenue au mapping nommé -Bureau- !");
                case 1: SetPlayerPos(playerid, -710.6744,267.8643,1.6860), SendClientMessage(playerid, -1, "{583405}[Info]{B66906} Bienvenue au mapping nommé -Soirée !");
                case 2: SetPlayerPos(playerid, -207.1890,2304.1289,701.8500), SendClientMessage(playerid, -1, "{583405}[Info]{B66906} Bienvenue au mapping nommé -Tabac/Bar de Flo- !");
                case 3: SetPlayerPos(playerid, 1771.1674,1590.3098,1001.2980), SendClientMessage(playerid, -1, "{583405}[Info]{B66906} Bienvenue au mapping nommé -Maison !");
				case 4: SetPlayerPos(playerid, 2521.0635,-1286.3047,995.1646), SendClientMessage(playerid, -1, "{583405}[Info]{B66906} Bienvenue au mapping nommé -Imprimerie!");
			}
        }
 		return 1;
	}
 	return 0;
}

 

Partager ce message


Lien à poster
Partager sur d’autres sites
il y a 6 minutes, Marcus62 a dit :

essaie sa, je suit sur tel compliqué

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
	if(dialogid == DialogInscription)
	{
		if(!response) return Kick(playerid); // Si le joueur clique sur "Quitter" on va la Kicker du serveur
 		if(strlen(inputtext) < 5) // Si le MDP inséré fais moins de 5 charactères
		{
			SendClientMessage(playerid, -1, "Votre mot de passe doit contenir au moins 5 charactères"); // On lui envoye un message disant que le MDP doit contenir au moins 5 charactères.
			ShowPlayerDialog(playerid, DialogInscription, DIALOG_STYLE_INPUT, "Inscription...", "Tapez un mot de passe pour inscrire ce compte.", "S'inscrire", "Quitter"); // On lui remontre le dialogue.
            return 1;
		}
		else // ça commence ici
		{
			new hashpass[64+1];
			new query[512]; //je pense que le problème viens d'ici, j'ai mis 512
		 	GetPlayerName(playerid, iJoueur[playerid][Pseudo], MAX_PLAYER_NAME);
			SHA256_PassHash(inputtext, "ADAWAD11AWD41ASDA2L222KDH", hashpass, sizeof(hashpass));
		 	mysql_format(mysql, query, sizeof(query), "INSERT INTO `Joueurs` (`Pseudo`, `MDP`) VALUES ('%e', '%e')", iJoueur[playerid][Pseudo], hashpass);
			mysql_tquery(mysql, query, "CreationCompte", "i", playerid);
            return 1;
		}
		return 1; // ça fini ici
	}
 	if(dialogid == DialogConnection)
	{
		if(!response) return Kick(playerid); // Si le joueur appuie sur "Quitter" on le Kick du serveur.
		new hashpass[64+1];
		SHA256_PassHash(inputtext, "ADAWAD11AWD41ASDA2L222KDH", hashpass, sizeof(hashpass));
		if(!strcmp(hashpass, iJoueur[playerid][MDP], true)) // Si le MDP inséré est égal au MDP de la BDD
		{
			new requete[100];
			mysql_format(mysql, requete, sizeof(requete), "SELECT * FROM `Joueurs` WHERE `Pseudo` = '%e' LIMIT 1", iJoueur[playerid][Pseudo]); // On prend la ligne ou le nom est égal au nom du joueur
			mysql_tquery(mysql, requete, "ChargerCompte", "i", playerid); // On envoye la requete.
            return 1;
		}
		else // Si le MDP inséré n'est pas égal au MDP de la BDD
		{
			SendClientMessage(playerid, -1, "Mot de passe incorrect, essayer encore!"); // On envoie le message disant que le MDP est incorrect!
			ShowPlayerDialog(playerid, DialogConnection, DIALOG_STYLE_PASSWORD, "Connection...", "Tapez votre mot de passe pour vous connecter", "Connecter", "Quitter"); // On lui remontre le dialogue
            return 1;
		}
		return 1;
	}
  	if(dialogid == dialogid1)
    {
        if(response)
        {
            switch(listitem)
            {
                case 0: SetPlayerPos(playerid, 290.9675,2529.1401,249.4671), SendClientMessage(playerid, -1, "{583405}[Info]{B66906} Bienvenue au mapping nommé -Bureau- !");
                case 1: SetPlayerPos(playerid, -710.6744,267.8643,1.6860), SendClientMessage(playerid, -1, "{583405}[Info]{B66906} Bienvenue au mapping nommé -Soirée !");
                case 2: SetPlayerPos(playerid, -207.1890,2304.1289,701.8500), SendClientMessage(playerid, -1, "{583405}[Info]{B66906} Bienvenue au mapping nommé -Tabac/Bar de Flo- !");
                case 3: SetPlayerPos(playerid, 1771.1674,1590.3098,1001.2980), SendClientMessage(playerid, -1, "{583405}[Info]{B66906} Bienvenue au mapping nommé -Maison !");
				case 4: SetPlayerPos(playerid, 2521.0635,-1286.3047,995.1646), SendClientMessage(playerid, -1, "{583405}[Info]{B66906} Bienvenue au mapping nommé -Imprimerie!");
			}
        }
 		return 1;
	}
 	return 0;
}

 

 

Je peut attendre que tu soit sur PC si jamais tu préfère, ne t'inquietes pas!

Voici que ce ça me donne:

 

C:\Users\Erwan\Desktop\serv truc\gamemodes\test.pwn(360) : warning 225: unreachable code
C:\Users\Erwan\Desktop\serv truc\gamemodes\test.pwn(380) : warning 225: unreachable code
Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


2 Warnings.

 

Deux petit warnings

Partager ce message


Lien à poster
Partager sur d’autres sites

Passe moi les ligne 360 et 380 c''est les return que j'ai mis , je serait sur l'ordi demain

Partager ce message


Lien à poster
Partager sur d’autres sites
il y a 5 minutes, Marcus62 a dit :

Passe moi les ligne 360 et 380 c''est les return que j'ai mis , je serait sur l'ordi demain

 

Ah oui excuse, j'ai oublier de mentionner là où était les warnings:

 

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
	if(dialogid == DialogInscription)
	{
		if(!response) return Kick(playerid); // Si le joueur clique sur "Quitter" on va la Kicker du serveur
 		if(strlen(inputtext) < 5) // Si le MDP inséré fais moins de 5 charactères
		{
			SendClientMessage(playerid, -1, "Votre mot de passe doit contenir au moins 5 charactères"); // On lui envoye un message disant que le MDP doit contenir au moins 5 charactères.
			ShowPlayerDialog(playerid, DialogInscription, DIALOG_STYLE_INPUT, "Inscription...", "Tapez un mot de passe pour inscrire ce compte.", "S'inscrire", "Quitter"); // On lui remontre le dialogue.
            return 1;
		}
		else // ça commence ici
		{
			new hashpass[64+1];
			new query[512]; //je pense que le problème viens d'ici, j'ai mis 512
		 	GetPlayerName(playerid, iJoueur[playerid][Pseudo], MAX_PLAYER_NAME);
			SHA256_PassHash(inputtext, "ADAWAD11AWD41ASDA2L222KDH", hashpass, sizeof(hashpass));
		 	mysql_format(mysql, query, sizeof(query), "INSERT INTO `Joueurs` (`Pseudo`, `MDP`) VALUES ('%e', '%e')", iJoueur[playerid][Pseudo], hashpass);
			mysql_tquery(mysql, query, "CreationCompte", "i", playerid);
            return 1;
		}
		return 1; // ça fini ici - ligne 360
	}
 	if(dialogid == DialogConnection)
	{
		if(!response) return Kick(playerid); // Si le joueur appuie sur "Quitter" on le Kick du serveur.
		new hashpass[64+1];
		SHA256_PassHash(inputtext, "ADAWAD11AWD41ASDA2L222KDH", hashpass, sizeof(hashpass));
		if(!strcmp(hashpass, iJoueur[playerid][MDP], true)) // Si le MDP inséré est égal au MDP de la BDD
		{
			new requete[100];
			mysql_format(mysql, requete, sizeof(requete), "SELECT * FROM `Joueurs` WHERE `Pseudo` = '%e' LIMIT 1", iJoueur[playerid][Pseudo]); // On prend la ligne ou le nom est égal au nom du joueur
			mysql_tquery(mysql, requete, "ChargerCompte", "i", playerid); // On envoye la requete.
            return 1;
		}
		else // Si le MDP inséré n'est pas égal au MDP de la BDD
		{
			SendClientMessage(playerid, -1, "Mot de passe incorrect, essayer encore!"); // On envoie le message disant que le MDP est incorrect!
			ShowPlayerDialog(playerid, DialogConnection, DIALOG_STYLE_PASSWORD, "Connection...", "Tapez votre mot de passe pour vous connecter", "Connecter", "Quitter"); // On lui remontre le dialogue
            return 1;
		}
		return 1; // ligne 380
	}
  	if(dialogid == dialogid1)
    {
        if(response)
        {
            switch(listitem)
            {
                case 0: SetPlayerPos(playerid, 290.9675,2529.1401,249.4671), SendClientMessage(playerid, -1, "{583405}[Info]{B66906} Bienvenue au mapping nommé -Bureau- !");
                case 1: SetPlayerPos(playerid, -710.6744,267.8643,1.6860), SendClientMessage(playerid, -1, "{583405}[Info]{B66906} Bienvenue au mapping nommé -Soirée !");
                case 2: SetPlayerPos(playerid, -207.1890,2304.1289,701.8500), SendClientMessage(playerid, -1, "{583405}[Info]{B66906} Bienvenue au mapping nommé -Tabac/Bar de Flo- !");
                case 3: SetPlayerPos(playerid, 1771.1674,1590.3098,1001.2980), SendClientMessage(playerid, -1, "{583405}[Info]{B66906} Bienvenue au mapping nommé -Maison !");
				case 4: SetPlayerPos(playerid, 2521.0635,-1286.3047,995.1646), SendClientMessage(playerid, -1, "{583405}[Info]{B66906} Bienvenue au mapping nommé -Imprimerie!");
			}
        }
 		return 1;
	}
 	return 0;
}

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Retire les deux return 1; au ligne la et essaie 

Partager ce message


Lien à poster
Partager sur d’autres sites
il y a 8 minutes, Marcus62 a dit :

Retire les deux return 1; au ligne la et essaie 

 

Plus aucune erreur, mais j'ai toujours celle-ci dans les logs mysql:

[16:49:05] [DEBUG] mysql_format - connection: 1, len: 50, format: "SELECT `MDP`, `ID` FROM `Joueurs` WHERE `Pseudo` = '%e' LIMIT 1"
[16:49:05] [ERROR] mysql_format - destination size is too small

 

& mes dialogs se mélange encore IG :/

Modifié par Erwan

Partager ce message


Lien à poster
Partager sur d’autres sites

Pas la même ligne

Avant
"INSERT INTO `Joueurs` (`Pseudo`, `MDP`) VALUES ('%e', '%e')""

Maintenant
mysql_format - connection: 1, len: 50, format: "SELECT `MDP`, `ID` FROM `Joueurs` WHERE `Pseudo` = '%e' LIMIT 1"

Faut que tu fait pareil ta variable tu la passe a 512 

 

Pour tes dialog, tu doit avoir dêjà des dialog avec le même nombre.. même si tu les define faut regarder que le nombre ne soit pas déjà attribuer 

Modifié par Marcus62
1 personne aime ça

Partager ce message


Lien à poster
Partager sur d’autres sites
il y a 9 minutes, Marcus62 a dit :

Pas la même ligne

Avant
"INSERT INTO `Joueurs` (`Pseudo`, `MDP`) VALUES ('%e', '%e')""

Maintenant
mysql_format - connection: 1, len: 50, format: "SELECT `MDP`, `ID` FROM `Joueurs` WHERE `Pseudo` = '%e' LIMIT 1"

Faut que tu fait pareil ta variable tu la passe a 512 

 

Pour tes dialog, tu doit avoir dêjà des dialog avec le même nombre.. même si tu les define faut regarder que le nombre ne soit pas déjà attribuer 

 

Merci merci beaucoup, le dialog concernant la connexion s'affiche enfin quand le compte est déjà creer !

 

Je vais désormais voir pourquoi tout mes dialog se mélange, merci encore pour ton aide !!

Partager ce message


Lien à poster
Partager sur d’autres sites
à l’instant, Erwan a dit :

 

Merci merci beaucoup, le dialog concernant la connexion s'affiche enfin quand le compte est déjà creer !

 

Je vais désormais voir pourquoi tout mes dialog se mélange, merci encore pour ton aide !!

Le forum sert à sa, si tu as encore besoin hésite pas ;) 

Partager ce message


Lien à poster
Partager sur d’autres sites

Souci réglé avec mister @Erwan

Le sujet peut être lock.

1 personne aime ça

Partager ce message


Lien à poster
Partager sur d’autres sites
Guest
Ce sujet ne peut plus recevoir de nouvelles réponses.