Warum erstellt er die House Pickups erst nach Neustart des Servers ?

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

  • Lass dir die beiden Queries mal mit einem print ausgeben (INSERT und SELECT), und poste dann, was da drin steht, in dem print.
    Poste dazu noch einen Screenshot der Daten aus der Datenbank, auf dem man den zuletzt angelegten Datensatz sieht.

  • Bin scheinbar zu blöd dafür.



    Hab des nun so gemacht


    Es wird mir nichts in den Logs angegeben daher vermute ich einfach das ich zu blöd dafür bin

  • Leider gibt es dabei nichts aus außer klar, das der Server gestartet wurde und gejoint wurde




    Also


  • Mach bitte die -1 weg bei mysql_insert_id wenn du eine spalte hast die auf auto_increment gesetzt wurde wird genau die ID zurückgegeben des neuen Datensatzes sollte dieser Beispiel 8 sein subtrahierst du gerade 1 und versuchst daher den Datensatz mit der ID 7 auszulesen anstatt 8

  • Mach bitte die -1 weg bei mysql_insert_id wenn du eine spalte hast die auf auto_increment gesetzt wurde wird genau die ID zurückgegeben des neuen Datensatzes sollte dieser Beispiel 8 sein subtrahierst du gerade 1 und versuchst daher den Datensatz mit der ID 7 auszulesen anstatt 8

    entfernt



    Logs geben noch immer nichts aus

  • Mach bitte die -1 weg bei mysql_insert_id

    Nein, da er beim SELECT Query ein +1 hat. Da die AUTO_INCREMENTS meistens bei 1 anfangen, muss man es so machen, um im Array bei 0 anfangen zu können. Das ist schon richtig.



    Logs geben noch immer nichts aus

    Versuche es so:
    ocmd:createcardealer(playerid,params[])
    {
    printf("Befehl eingegeben (%d)", pInfo[playerid][pAdmin]);
    new name[32],price,level,Float:xPos[3];
    if(pInfo[playerid][pAdmin] != 5)return 1;
    if(sscanf(params,"dds[32]",price,level,name))return SendClientMessage(playerid,COLOR_GREY,"Benutze: /createcardealer [Preis] [Level] [Name]");
    printf("Passt.");
    for(new i;i<MAX_AUTOHAUS;i++)
    {
    if(AHInfo[i][zCreated])continue;
    new str[256];
    GetPlayerPos(playerid,xPos[0],xPos[1],xPos[2]);
    format(str,sizeof str,"INSERT INTO `Cardealers` (`Owner`, `PosX`, `PosY`, `PosZ`, `Name`, `Price`, `Level`, `LPosX`, `LPosY`, `LPosZ`) VALUES ('Niemand', '%f', '%f', '%f', '%s', '%d', '%d', '%f', '%f', '%f')",xPos[0],xPos[1],xPos[2],name,price,level,xPos[0],xPos[1],xPos[2]);
    print(str);
    mysql_query(str);
    return LoadCarDealer(mysql_insert_id()-1);
    }
    return 1;
    }


    Du musst den Server neu starten und den Befehl eingeben.

  • Der teil aus der Log

    Code
    [12:15:43] [join] ForestMile has joined the server (2:84.185.193.166)
    [12:16:06] Befehl eingegeben (5)
    [12:16:08] Befehl eingegeben (5)
    [12:16:08] Passt.