format query Zeile zu lang

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 liebe Community, meine query Zeile ist leider zu lang. Ich habe schon hier im Forum mir die Threads dazu angeschaut, doch ich weiß nicht richtig welche Möglichkeit ich anwenden soll, und wie es sich erfolgreich umschreibt.
    Ich weiß nicht wie ich eine Query in einer neuen Zeile anfangen kann, wenn ich im Bereich der "" bin.



    new query[800], name[MAX_PLAYER_NAME], escpassword[129];
    GetPlayerName(playerid, name, MAX_PLAYER_NAME);
    mysql_real_escape_string(name, name);
    mysql_real_escape_string(password, escpassword);
    //Kommende Zeile zu lang.
    format(query, sizeof query, "INSERT INTO `accounts` (`Name`, `Password`, `Level`, `Geld`, `Admin`, `Skin`, `Kills`, `Tode`, `Fraktion`, `Drogen`, `Rank`, `Navi`, `Hitsound`, `Levelpunkte`, `Job`, `Wanteds`, `Personalausweis`, `AutoSchein`, `MotorradSchein`, `FlugzeugSchein`,`BootSchein`, `Arbeitslosengeld`, `PayDay`, `PayDayGeld`,`FirstLog`) VALUES ('%s', '%s', '1', '500', '0', '137', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1')",
    name, escpassword, SpielerInfo[playerid][pLevel], SpielerInfo[playerid][pGeld], SpielerInfo[playerid][pAdmin], SpielerInfo[playerid][pSkin], SpielerInfo[playerid][pKills], SpielerInfo[playerid][pTode], SpielerInfo[playerid][pFraktion], SpielerInfo[playerid][pDrogen],
    SpielerInfo[playerid][pRank], SpielerInfo[playerid][pNavi], SpielerInfo[playerid][pHitsound], SpielerInfo[playerid][pLevelpunkte], SpielerInfo[playerid][pJob], SpielerInfo[playerid][pWanteds], SpielerInfo[playerid][pPerso], SpielerInfo[playerid][pAutoSchein],
    SpielerInfo[playerid][pMotorradSchein], SpielerInfo[playerid][pFlugzeugSchein], SpielerInfo[playerid][pBootSchein], SpielerInfo[playerid][pArbeitslosenGeld], SpielerInfo[playerid][pPayDay], SpielerInfo[playerid][pPayDayGeld], SpielerInfo[playerid][pFirstLog]);
    mysql_function_query(1, query, false, "", "");



    Ich würde mich über Hilfe freuen.
    Mit freundlichen Grüßen.

  • Mach es doch genau so wie du es mit format und SendClientMessage machen tust.


    Erst query, dann mysql_function_query.
    Dann wieder so.


    //Falsch verstanden sry.
    Mach \
    damit kannste in eine neue zeile


    bsp:
    format(query,128,"Passwort='%s'\
    Level='%i",Passwort,Level

    Einmal editiert, zuletzt von Pascal. ()


  • Ich verstehe nicht richtig wie das funktionieren soll. Ich habe bereits getestet eine zweite query zu machen, und 2 Sachen drin einzuspeichern. Leider wird in der Datenbank eine neue Tabelle angelegt ohne Namen, da in der ersten query ja der Name steht.
    Vielleicht hast du mein Problem nicht ganz verstanden. Wenn ich die Zeile so stehen lasse, steht dass sie zu lang ist. Ist ja auch verständlich so lang wie sie nach rechts aus dem Bildschirm ragt. Wie kann ich diese kürzen, ohne dass es etwas beschädigt, ohne Fehler..



    EDIT: Ich benutze 800 da 300 oder 400 zu wenig ist. Wenn es zu wenig ist kann man sich nicht mehr registrieren. Deshalb habe ich es auf 800 erhöht.

  • Du hast eh etwas unsinn veranstaltet mach den mal so:
    format(query, sizeof query, "INSERT INTO `accounts` (`Name`, `Password`, `Level`, `Geld`, `Admin`, `Skin`, `Kills`, `Tode`, `Fraktion`, `Drogen`, `Rank`, `Navi`, `Hitsound`, `Levelpunkte`, `Job`, `Wanteds`, `Personalausweis`, `AutoSchein`, `MotorradSchein`, `FlugzeugSchein`,`BootSchein`, `Arbeitslosengeld`, `PayDay`, `PayDayGeld`,`FirstLog`) VALUES\
    ('%s', '%s', '1', '500', '0', '137', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1')",
    name, escpassword);
    mysql_function_query(1, query, false, "", "");
    Du brauchst ja nur die ersten 2 Werte den rest hast du ja fest angegeben

    All in all it's just another brick in the wall