MySQL wird nicht gespeichert=

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
  • Hey Com,


    Aus irgendwelchen unerklärlichen Gründen wird leider kein Blitzer in der MySQL Datenbank gespeicher?


    Ich kann mir das nicht erklären?


    stock SaveBlitzer()
    {
    new query[128];
    for(new id = 0; id < MAX_BLITZER_DATA; id++)
    {
    format(query,sizeof(query),"SELECT Blitzerx FROM `blitzer` WHERE `Blitzerid` = '%d'",id);
    mysql_query(query);
    mysql_store_result();
    if(!mysql_num_rows())
    {
    format(query,sizeof(query),"INSERT INTO blitzer (`Blitzerid`,`Blitzerx`,`Blitzery`,`Blitzerz`,`BlitzerRotz`,`Geschwindigkeit`,`Strafe`,`Punkte`,`LastBlitz`,`Filmabschnitte`, `Toleranz`,`Inuse`) VALUES ('%d','%f','%f','%f','%f','%d','%d','%d','%s','%d','%d','%d')",
    BlitzerInfo[id][Blitzerid], BlitzerInfo[id][Blitzerx], BlitzerInfo[id][Blitzery], BlitzerInfo[id][BlitzerRotz], BlitzerInfo[id][Geschwindigkeit], BlitzerInfo[id][Strafe], BlitzerInfo[id][Punkte], BlitzerInfo[id][LastBlitz], BlitzerInfo[id][Filmabschnitte], BlitzerInfo[id][Toleranz]);
    mysql_query(query);
    print("Erstellt");
    }
    else
    {
    format(query,sizeof(query),"UPDATE blitzer SET Blitzerid = '%d',`Blitzerx` = '%f',`Blitzery` = '%f' ,`Blitzerz` = '%f', `BlitzerRotz` = '%f',`Geschindigkeit` = '%d',`Strafe` = '%d',`Punkte` = '%d' ,`LastBlitz` = '%s' ,`Filmabschnitte` = '%d',`Toleranz` = '%d', `Inuse` = '%d'",
    BlitzerInfo[id][Blitzerid], BlitzerInfo[id][Blitzerx], BlitzerInfo[id][Blitzery], BlitzerInfo[id][BlitzerRotz],BlitzerInfo[id][Blitzerz], BlitzerInfo[id][Geschwindigkeit], BlitzerInfo[id][Strafe], BlitzerInfo[id][Punkte], BlitzerInfo[id][LastBlitz], BlitzerInfo[id][Filmabschnitte],BlitzerInfo[id][Toleranz],BlitzerInfo[id][Inuse]);
    mysql_query(query);
    print("Geladen");
    }
    mysql_free_result();
    }
    print("Blitzer gesaved!");
    return 1;
    }


    stock LoadBlitzer()
    {
    new data[550], blitzer_count;
    mysql_query("SELECT * FROM blitzer");
    mysql_store_result();
    while(mysql_fetch_row(data))
    {
    sscanf(data, "e<p<|>iffffiiisiii>", BlitzerInfo[blitzer_count]);
    blitzer_count++;
    }
    mysql_free_result();
    print("Blitzer wurden geladen!");
    return 1;
    }

    Danke

  • was spricht die mysql.log


    In der Log steht das (Ausschnitt)=



    Ich weiss nicht was da los ist

  • (Error ID: 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 '' at line 1)


    Bist du eigentlich Blind oder so die MySQL log ist nicht zu dekoration da sie soll Fehler ausgeben und den verlauf der funktion des mysqlsplugins ausgeben


    zu dem ist dein string zu klein um ein großes der string hat ohne werte 234 Zeichen

  • (Error ID: 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 '' at line 1)


    Bist du eigentlich Blind oder so die MySQL log ist nicht zu dekoration da sie soll Fehler ausgeben und den verlauf der funktion des mysqlsplugins ausgeben


    Ich habe aber diese ' ' gemacht überall


  • Ich habe aber diese ' ' gemacht überall


    new PQuery[]="INSERT INTO blitzer (`Blitzerid`,`Blitzerx`,`Blitzery`,`Blitzerz`,`BlitzerRotz`,`Geschwindigkeit`,`Strafe`,`Punkte`,`LastBlitz`,`Filmabschnitte`, `Toleranz`,`Inuse`) VALUES ('%d','%f','%f','%f','%f','%d','%d','%d','%s','%d','%d','%d')";


    printf("%d",strlen(PQuery));


    was strlen ausgibt wirst du wohl wissen vergleich mal die größe mit der deines strings den du deklariert hast
    new query[128];


  • new PQuery[]="INSERT INTO blitzer (`Blitzerid`,`Blitzerx`,`Blitzery`,`Blitzerz`,`BlitzerRotz`,`Geschwindigkeit`,`Strafe`,`Punkte`,`LastBlitz`,`Filmabschnitte`, `Toleranz`,`Inuse`) VALUES ('%d','%f','%f','%f','%f','%d','%d','%d','%s','%d','%d','%d')";


    printf("%d",strlen(PQuery));


    was strlen ausgibt wirst du wohl wissen vergleich mal die größe mit der deines strings den du deklariert hast
    new query[128];


    Schwachsinn, für %f und %d werden andere Werte eingesetzt also ist das strlen nicht richtig


    einfach wie ich es oben beschrieben habe ;)

  • Eigentlich wollte ich mein beitrag editieren nochmal und schreiben doerfler hat ja schon vor mir gepostet.
    Aber warum ich das gepostet habe den code war der grund das er sieht das die string größe für seinen string niemals die größe
    haben kann von 128 Zeichen. Es sollte ja klar sein das %f , %d , %s etc .. nur platzhalter sind es war ja auch nur zur veranschaulichung gedacht mein lieber.