• 05 Juin 2026, 18:38:39


Auteur Sujet: [PAWN-SQL] Galère...  (Lu 2179 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne Dark4ng3L

  • *
  • Bandit
  • Messages: 480
    • Voir le profil
    • DecaWeb.ch - L'informatique comme vous ne l'avez jamais vu!
[PAWN-SQL] Galère...
« le: 02 Décembre 2009, 13:08:23 »
Hellow !
j'essaye de passé mon système de compte en SQL (en me basant sur Radmin)
donc voili voilou ca marche pas

Code :
<?php // pour metre les couleurs

public OnPlayerRegister(playeridpassword[])
{
if(IsPlayerNPC(playerid)){ return 1; }
if(IsPlayerConnected(playerid))
{
    new PlayerName[256];
new RPassword[60];
new string[256];
GetPlayerName(playeridPlayerNamesizeof(PlayerName));
samp_mysql_real_escape_string(password[], RPassword);
if(MySQLCheckUserExistance(playerid))
{
    format(stringsizeof(string), "ERREUR: le compte %s existe déjà. faites /login [password]"PlayerName);
    SendClientMessage(playeridCOLOR_REDstring);
    return 1;
}
format(querysizeof(query), "INSERT INTO `users` (reg_id, Nom, Key, Level, AdminLevel, DonateRank, UpgradePoints, ConnectedTime, Registered, Sex, Age, Origin, CK, Muted, Respect, Money, Bank, Crimes, Kills, Deaths, Arrested, WantedDeaths, Phonebook, LottoNr, Fishes, BiggestFish, Job, Paycheck, HeadValue, Jailed, JailTime, Materials, Drugs, Leader, Member, FMember, Rank, Char, ContractTime, DetSkill, SexSkill, LawSkill, MechSkill, JackSkill, CarSkill, DrugsSkill, CookSkill, FishSkill, pSHealth) VALUES(0, \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", 750, 10000, \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", 50.0)",
 PlayerNameRPassword,PlayerInfo[playerid][pLevel],PlayerInfo[playerid][pAdmin],PlayerInfo[playerid][pDonateRank],PlayerInfo[playerid][gPupgrade],PlayerInfo[playerid][pConnectTime],
 PlayerInfo[playerid][pReg],PlayerInfo[playerid][pSex],PlayerInfo[playerid][pAge],PlayerInfo[playerid][pOrigin],PlayerInfo[playerid][pCK],PlayerInfo[playerid][pMuted],PlayerInfo[playerid][pExp],
 PlayerInfo[playerid][pCrimes],PlayerInfo[playerid][pKills],PlayerInfo[playerid][pDeaths],PlayerInfo[playerid][pArrested],PlayerInfo[playerid][pWantedDeaths],PlayerInfo[playerid][pPhoneBook],
 PlayerInfo[playerid][pLottoNr],PlayerInfo[playerid][pFishes],PlayerInfo[playerid][pBiggestFish],PlayerInfo[playerid][pJob],PlayerInfo[playerid][pPayCheck],PlayerInfo[playerid][pHeadValue],
 PlayerInfo[playerid][pJailed],PlayerInfo[playerid][pJailTime],PlayerInfo[playerid][pMats],PlayerInfo[playerid][pDrugs],PlayerInfo[playerid][pLeader],PlayerInfo[playerid][pMember],
 PlayerInfo[playerid][pFMember],PlayerInfo[playerid][pRank],PlayerInfo[playerid][pChar],PlayerInfo[playerid][pContractTime],PlayerInfo[playerid][pDetSkill],PlayerInfo[playerid][pSexSkill],
 PlayerInfo[playerid][pBoxSkill],PlayerInfo[playerid][pLawSkill],PlayerInfo[playerid][pMechSkill],PlayerInfo[playerid][pJackSkill],PlayerInfo[playerid][pCarSkill],PlayerInfo[playerid][pDrugsSkill],
 PlayerInfo[playerid][pCookSkill],PlayerInfo[playerid][pFishSkill]
);
samp_mysql_query(query);
format(querysizeof(query), "SELECT `reg_id` FROM `users` WHERE `name` = '%s'"PlayerName);
samp_mysql_query(query);
samp_mysql_store_result();
SendClientMessage(playeridCOLOR_YELLOW"Compte crée , merci à vous, vous pouvez désormais vous loggué (/login [password]).");
}
return 1;
}
Erreurs:
C:\Atlanta-RP\SAMP\samp0.3a\gamemodes\larp.pwn(10823) : error 029: invalid expression, assumed zero
C:\Atlanta-RP\SAMP\samp0.3a\gamemodes\larp.pwn(10829) : error 075: input line too long (after substitutions)
C:\Atlanta-RP\SAMP\samp0.3a\gamemodes\larp.pwn(10830) : error 037: invalid string (possibly non-terminated string)
C:\Atlanta-RP\SAMP\samp0.3a\gamemodes\larp.pwn(10830) : error 017: undefined symbol "INSERT"
C:\Atlanta-RP\SAMP\samp0.3a\gamemodes\larp.pwn(10830) : error 029: invalid expression, assumed zero
C:\Atlanta-RP\SAMP\samp0.3a\gamemodes\larp.pwn(10830) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


6 Errors.
voila j'espert qu'on pourra m'aider !
++D4++
Cordialement Dark4ng3L aussi connu sous le nom de Mathias_Martinez, Matthias_Angelo et lugia !




Hors ligne FuSion

  • Pawn coder
  • *
  • Grand Banditisme
  • for(new i = 0; i < INFINI; i++)
  • Messages: 888
    • Voir le profil
Re : [PAWN-SQL] Galère...
« Réponse #1 le: 02 Décembre 2009, 13:15:14 »
Je te conseille de te baser du Modern Tropia ( Un truc du genre ) C'est aussi un RPG donc tu devrais pas avoir beaucoup de probleme de verifier ce qui louche  ;)

Hors ligne Dark4ng3L

  • *
  • Bandit
  • Messages: 480
    • Voir le profil
    • DecaWeb.ch - L'informatique comme vous ne l'avez jamais vu!
Re : [PAWN-SQL] Galère...
« Réponse #2 le: 02 Décembre 2009, 13:18:01 »
Sauf que j'les pas xD
j'vais essayer
Cordialement Dark4ng3L aussi connu sous le nom de Mathias_Martinez, Matthias_Angelo et lugia !




Hors ligne FuSion

  • Pawn coder
  • *
  • Grand Banditisme
  • for(new i = 0; i < INFINI; i++)
  • Messages: 888
    • Voir le profil
Re : [PAWN-SQL] Galère...
« Réponse #3 le: 02 Décembre 2009, 13:20:12 »
Il es en libre téléchargement sur le forum SA-MP c'est pas 1.7 mo qui va te causer un probleme je pense  :closedeyes

Hors ligne Alan

  • *
  • Tueur en série
  • Messages: 165
    • Voir le profil
Re : [PAWN-SQL] Galère...
« Réponse #4 le: 02 Décembre 2009, 13:33:20 »
C:Atlanta-RPSAMPsamp0.3agamemodeslarp.pwn(10823) : error 029: invalid expression, assumed zero
C:Atlanta-RPSAMPsamp0.3agamemodeslarp.pwn(10829) : error 075: input line too long (after substitutions)
C:Atlanta-RPSAMPsamp0.3agamemodeslarp.pwn(10830) : error 037: invalid string (possibly non-terminated string)
C:Atlanta-RPSAMPsamp0.3agamemodeslarp.pwn(10830) : error 017: undefined symbol "INSERT"
C:Atlanta-RPSAMPsamp0.3agamemodeslarp.pwn(10830) : error 029: invalid expression, assumed zero
C:Atlanta-RPSAMPsamp0.3agamemodeslarp.pwn(10830) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


6 Errors.

Petite Aide. Regarde ici : C:Atlanta-RPSAMPsamp0.3agamemodeslarp.pwn(10830)

Va sur Ton GM. Et regarde cette ligne la 10830 Regarde la Ligne et dit le texte qu'il y a.

Double post
Modern Topia: http://forum.sa-mp.com/index.php?topic=40077.0
« Modifié: 02 Décembre 2009, 13:36:24 par Alan »
» [GM]|[& Serveur]  Seattle RolePlay; Gamemode- 56% ~ En cours;

Hors ligne » Lukubi™

  • *
  • Soy el bico loco
  • Messages: 3282
    • Voir le profil
Re : Re : [PAWN-SQL] Galère...
« Réponse #5 le: 02 Décembre 2009, 13:43:32 »
C:Atlanta-RPSAMPsamp0.3agamemodeslarp.pwn(10823) : error 029: invalid expression, assumed zero
C:Atlanta-RPSAMPsamp0.3agamemodeslarp.pwn(10829) : error 075: input line too long (after substitutions)
C:Atlanta-RPSAMPsamp0.3agamemodeslarp.pwn(10830) : error 037: invalid string (possibly non-terminated string)
C:Atlanta-RPSAMPsamp0.3agamemodeslarp.pwn(10830) : error 017: undefined symbol "INSERT"
C:Atlanta-RPSAMPsamp0.3agamemodeslarp.pwn(10830) : error 029: invalid expression, assumed zero
C:Atlanta-RPSAMPsamp0.3agamemodeslarp.pwn(10830) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


6 Errors.

Petite Aide. Regarde ici : C:Atlanta-RPSAMPsamp0.3agamemodeslarp.pwn(10830)

Va sur Ton GM. Et regarde cette ligne la 10830 Regarde la Ligne et dit le texte qu'il y a.

Il a mit son code sur son post, ton post ne sert pas a grand chose, mais tu a la volonté d'aider les autre c'est déjà sa (:

“Si la Terre est un endroit dangereux ce n’est pas à cause des hommes mauvais mais à cause des hommes bons qui ne font rien pour les empêcher.” (Albert Einstein).

Hors ligne Dark4ng3L

  • *
  • Bandit
  • Messages: 480
    • Voir le profil
    • DecaWeb.ch - L'informatique comme vous ne l'avez jamais vu!
Re : [PAWN-SQL] Galère...
« Réponse #6 le: 02 Décembre 2009, 13:55:58 »
yop merci de vôtre aide (en espérant que r@f passera par la )

voila la ligne 10823
      
format(query, sizeof(query), "INSERT INTO `users` (reg_id, Nom, Key, Level, AdminLevel, DonateRank, UpgradePoints, ConnectedTime, Registered, Sex, Age, Origin, CK, Muted, Respect, Money, Bank, Crimes, Kills, Deaths, Arrested, WantedDeaths, Phonebook, LottoNr, Fishes, BiggestFish, Job, Paycheck, HeadValue, Jailed, JailTime, Materials, Drugs, Leader, Member, FMember, Rank, Char, ContractTime, DetSkill, SexSkill, LawSkill, MechSkill, JackSkill, CarSkill, DrugsSkill, CookSkill, FishSkill, pSHealth) VALUES(0, \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", 750, 10000, \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", \"%s\", 50.0)",
++ D4 ++
Cordialement Dark4ng3L aussi connu sous le nom de Mathias_Martinez, Matthias_Angelo et lugia !




Hors ligne FuSion

  • Pawn coder
  • *
  • Grand Banditisme
  • for(new i = 0; i < INFINI; i++)
  • Messages: 888
    • Voir le profil
Re : [PAWN-SQL] Galère...
« Réponse #7 le: 02 Décembre 2009, 13:57:09 »
Une question un peu bête: Tu as le plugin MySQL ?

Hors ligne Dark4ng3L

  • *
  • Bandit
  • Messages: 480
    • Voir le profil
    • DecaWeb.ch - L'informatique comme vous ne l'avez jamais vu!
Re : [PAWN-SQL] Galère...
« Réponse #8 le: 02 Décembre 2009, 14:01:37 »
oui xD
mais quand on compile on a pas besoin du plugin juste de l'inc :-\
Cordialement Dark4ng3L aussi connu sous le nom de Mathias_Martinez, Matthias_Angelo et lugia !




Hors ligne MrFredo

  • *
  • Grand Banditisme
  • Scripteur PHP/PAWN
  • Messages: 953
    • Voir le profil
    • GTA-Hosting
Re : [PAWN-SQL] Galère...
« Réponse #9 le: 02 Décembre 2009, 14:09:08 »
Question conne mais bon avec la taille de ta requete t'est sur que ton new query est sufisament gros pour acceuilir une si longue chaine ::)

Hors ligne Dark4ng3L

  • *
  • Bandit
  • Messages: 480
    • Voir le profil
    • DecaWeb.ch - L'informatique comme vous ne l'avez jamais vu!
Re : [PAWN-SQL] Galère...
« Réponse #10 le: 02 Décembre 2009, 14:15:35 »
oui XD

new query[10000];
j'pense que c'es assé  :lmfao
Cordialement Dark4ng3L aussi connu sous le nom de Mathias_Martinez, Matthias_Angelo et lugia !




Hors ligne Syg

  • Expert programmeur C/C++/PAWN
  • *
  • The GTAOnline Jesus
  • Messages: 3908
    • Voir le profil
Re : [PAWN-SQL] Galère...
« Réponse #11 le: 03 Décembre 2009, 17:11:43 »
Bon, il faudrait que je fasse un tuto SQL mais je n'ai pas trop le temps.

Premièrement, ton erreur "input line too long (after substitutions)" indique qu'une de tes lignes de code est trop longue.
Çà n'a rien à voir avec la taille des variables, juste la ligne elle même (qui fait quand même 896 caractères de long !!) que le compilateur n'arrive pas a traiter en une fois. Je pense qu'une ligne de code ne doit pas excéder 512 caractères (mais je n'en suis pas sur, juste que j'ai une ligne de 498 caractères dans le mode Lalu's Stunt et le compilo ne dit rien)

La solution, c'est de réduire la taille de ta ligne en enlevant des caractère ou en coupant la ligne en morceau pour la répartir sur plusieurs lignes.

Tout d'abord, tu peux sauter une ligne après chaque , (virgule) séparant les paramètres (Attention, tu ne peux pas faire ça dans le chaîne qui contient la requête SQL, c'est une chaîne de caractères).
Ensuite, il faut revoir la ta chaîne de requête.
Il est possible de découper une chaîne pour la faire tenir sur plusieurs ligne en utilisant le caractère \ mais je ne suis pas sur que ça marche.
Concernant la requête elle-même, tu peux très avantageusement remplacer tous les \" par des ' car SQL est très permissif.
Ce qui donnerais (je ne mets qu'un morceau de ta requête) :
VALUES(0, '%s', '%s', '%s', '%s', '%s', '%%s', .......De plus, tous ces \" sont source d'erreur, si tu en oublies un, tu auras des erreurs de compilation et elles risquent d'être difficile à trouver.

Sinon, là où tu pourrais gagner beaucoup, c'est en supprimant les noms des champs de la table. Mais pour faire ça, il est impératif que tous les champs de la table soit présent dans VALUE.
J'explique :
Si on prend la table Toto contentant les champs suivants :
Champ1
Champ2
Champ3
Champ4.

Si je veux insérer une ligne dans cette table en fixant la valeur de tous les champs, je peux exécuter la requête
Syntaxe 1 :
INSERT INTO Toto VALUES (1, 2, 3, 4);
Par contre, si je ne veux initialiser que Champ2 et Champ3, il faut que je le dise.
Syntaxe 2 (c'est celle que tu utilise) :
INSERT INTO Toto (Champ2, Champ3) VALUES (2, 3);
Donc si ton INSERT porte sur tous les champs de ta table, tu peux utiliser la syntaxe 1. Ceci diminuera grandement la taille de la ligne de code.

Voici ce que ça donne en appliquant toutes les réductions dont je parle.
format(query, sizeof(query),
"INSERT INTO users VALUES(0, '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', 750, 10000, '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', 50.0)",
PlayerName, RPassword,PlayerInfo[playerid][pLevel],PlayerInfo[playerid][pAdmin],PlayerInfo[playerid][pDonateRank],PlayerInfo[playerid][gPupgrade],PlayerInfo[playerid][pConnectTime],
PlayerInfo[playerid][pReg],PlayerInfo[playerid][pSex],PlayerInfo[playerid][pAge],PlayerInfo[playerid][pOrigin],PlayerInfo[playerid][pCK],PlayerInfo[playerid][pMuted],PlayerInfo[playerid][pExp],
PlayerInfo[playerid][pCrimes],PlayerInfo[playerid][pKills],PlayerInfo[playerid][pDeaths],PlayerInfo[playerid][pArrested],PlayerInfo[playerid][pWantedDeaths],PlayerInfo[playerid][pPhoneBook],
PlayerInfo[playerid][pLottoNr],PlayerInfo[playerid][pFishes],PlayerInfo[playerid][pBiggestFish],PlayerInfo[playerid][pJob],PlayerInfo[playerid][pPayCheck],PlayerInfo[playerid][pHeadValue],
PlayerInfo[playerid][pJailed],PlayerInfo[playerid][pJailTime],PlayerInfo[playerid][pMats],PlayerInfo[playerid][pDrugs],PlayerInfo[playerid][pLeader],PlayerInfo[playerid][pMember],
PlayerInfo[playerid][pFMember],PlayerInfo[playerid][pRank],PlayerInfo[playerid][pChar],PlayerInfo[playerid][pContractTime],PlayerInfo[playerid][pDetSkill],PlayerInfo[playerid][pSexSkill],
PlayerInfo[playerid][pBoxSkill],PlayerInfo[playerid][pLawSkill],PlayerInfo[playerid][pMechSkill],PlayerInfo[playerid][pJackSkill],PlayerInfo[playerid][pCarSkill],PlayerInfo[playerid][pDrugsSkill],
PlayerInfo[playerid][pCookSkill],PlayerInfo[playerid][pFishSkill]);
Cette ligne devrait compiler sans problème à condition que TOUS les champs de la table soient présents dans la requête. Si ce n'est pas le cas, tu auras une erreur SQL lors de l'exécution de la requête.

++
Syg
Courtesy of GtaManiac

Hors ligne Ssk

  • *
  • Lulu's Stunt - Le serveur stunt de Lulu !
  • Messages: 8154
    • Voir le profil
Re : [PAWN-SQL] Galère...
« Réponse #12 le: 03 Décembre 2009, 17:12:14 »
OMG c' est trop meme baisse un petit peu la taille a environ 256 ou encore 512


EDIT: Arg syg a poster avant moi ^^



Derrière tout programme se cache un programmeur, je considère le monde comme un programme.
Mon blog

Hors ligne Dark4ng3L

  • *
  • Bandit
  • Messages: 480
    • Voir le profil
    • DecaWeb.ch - L'informatique comme vous ne l'avez jamais vu!
Re : [PAWN-SQL] Galère...
« Réponse #13 le: 03 Décembre 2009, 21:23:27 »
merci beaucoup syg de ta grande aide !
je vais essayer ca Dessuite j'vous redit des nouvelles !!
merci encore
++ D4 ++
Cordialement Dark4ng3L aussi connu sous le nom de Mathias_Martinez, Matthias_Angelo et lugia !