MySQL Error

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hallo wenn ich den server starte und connecte und /makeleader eingebe kommt eine .txt mit mysql_log
    und da steht



    [14:27:59] [ERROR] CMySQLQuery::Execute[()] - (error #1064) You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '6',spawnchange='0' WHERE id='7'' at line 1
    [14:28:45] [ERROR] CMySQLQuery::Execute[()] - (error #1064) You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '6',spawnchange='0' WHERE id='7'' at line 1
    [14:29:21] [ERROR] CMySQLQuery::Execute[()] - (error #1064) You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '0',spawnchange='0' WHERE id='7'' at line 1


    waran liegt der problem?


    MFG :thumbdown:

  • ocmd:makeleader(playerid, params[])
    {
    if(!isAdmin(playerid,3))return SendClientMessage(playerid,COLOR_RED,"Dein Adminrang ist zu niedrig.");
    new pID, fID;
    if(sscanf(params,"ui",pID,fID))return SendClientMessage(playerid, COLOR_RED,"FEHLER: /makeleader [playerid] [fraktion]");
    if(fID >= sizeof(fInfo))return SendClientMessage(playerid,COLOR_RED,"Fraktion existiert nicht.");
    sInfo[pID][fraktion] = fID;
    sInfo[pID][rang] = 6;
    new string[128];
    format(string,sizeof(string),
    "%s hat dich zum Leader der Fraktion %s gemacht",
    getPlayerName(playerid), fInfo[fID][f_name]);
    SendClientMessage(pID, COLOR_RED, string);
    SendClientMessage(playerid,COLOR_RED,"Du hast einen Spieler zum Leader gemacht");
    return 1;
    }

  • Bitte wenn schon im [pwn] Tag...
    Bitte einmal die MySQL Abfrage.


    @Man]e.
    Wenn er hier nach einem MySQL Syntax Problem fragt, wird es dir wohl nicht viel bringen nach irgendwelchen Variablen oder Befehlen zu fragen. Am wichtigsten ist dann erstmal die Abfrage ^^.

  • sieht negativ aus



    [16:02:14] [ERROR] CMySQLQuery::Execute[()] - (error #1064) You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '6',spawnchange='0' WHERE id='7'' at line 1

  • natürlich


    savePlayer(playerid){ if(sInfo[playerid][eingeloggt]==0)return 1; //Speichern level,money new query[256]; format(query,sizeof(query),"UPDATE user SET level='%i',money='%i',alevel='%i',fraktion='%i,rang='%i',spawnchange='%i' WHERE id='%i'",sInfo[playerid][level],GetPlayerMoney(playerid),sInfo[playerid][alevel],sInfo[playerid][fraktion],sInfo[playerid][rang],sInfo[playerid][spawnchange],sInfo[playerid][db_id]); mysql_function_query(dbhandle,query,false,"",""); return 1;}

  • Nimm die Kommata weg.
    Ich weiß, dass ich mit folgender Aussage ein wenig wie ein Korrekturnazi rüber komme aber das riskier ich ;)
    Variablen werden immer in ' geschrieben. Namen von Spalten, Tabellen, Datenbanken... immer in ``
    Uuund... Dass da Kommata zwischen kommen ist mir neu oO

  • savePlayer(playerid)
    {
    if(sInfo[playerid][eingeloggt]==0)return 1;
    new query[256];
    format(query,sizeof(query),"UPDATE `user` SET `level`='%i',`money`='%i',`alevel`='%i',`fraktion`='%i,`rang`='%i',`spawnchange`='%i' WHERE `id`='%i'",
    sInfo[playerid][level],GetPlayerMoney(playerid),sInfo[playerid][alevel],sInfo[playerid][fraktion],sInfo[playerid][rang],sInfo[playerid][spawnchange],sInfo[playerid][db_id]);
    mysql_function_query(dbhandle,query,false,"","");
    return 1;
    }


    Mach das mal so.

    Einmal editiert, zuletzt von Man]ne. ()