Probleme mit Speichern (MySQL)

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 Breadfish,


    ich habe ein Problem, dass ich mir zurzeit nicht selber erklären kann. Es passiert, wenn ich die Häuser speichern möchte. Er speichert die einfach nicht und geht nur bis zur eins(Siehe Code unten). Es muss also an den Variablen liegen, bloß was ist daran falsch? Hier mal mein Code:


    stock SaveHaus(houseid, _debug = 0) {
    if(HouseInfo[houseid][hCreated] == false)return 0;
    print("1");//Bis hier hin !!!!!
    new _mainquery[2028], _query[314];
    print("2"); // Das schafft er schon nicht mehr.
    format(_query, sizeof _query, "UPDATE yrp_houses SET hName='%s', hPreis='%i', hRent='%i', hRenters='%i', hMaxRent='%i', hOwnerID='%i', hLevel='%i', hX='%f', hY='%f', hZ='%f',",
    HouseInfo[houseid][hName],HouseInfo[houseid][hPreis],HouseInfo[houseid][hRent],HouseInfo[houseid][hRenters],HouseInfo[houseid][hMaxRent],HouseInfo[houseid][hOwnerID],HouseInfo[houseid][hLevel],HouseInfo[houseid][hX],HouseInfo[houseid][hY],HouseInfo[houseid][hZ]);
    printf("3, %s", _query);
    strcat(_mainquery, _query);
    printf("4, %s", _mainquery);
    format(_query, sizeof _query, "hRoomID='%i', hVirtual='%i', hHaveBank='%i', hHaveLocker='%i', hHaveHide='%i', hBank='%i', hWeapon0='%i', hWeapon1='%i', hWeapon2='%i', hWeapon3='%i', hWeapon4='%i',",
    HouseInfo[houseid][hRoomID],HouseInfo[houseid][hVirtual],HouseInfo[houseid][hHaveBank],HouseInfo[houseid][hHaveLocker],HouseInfo[houseid][hHaveHide],HouseInfo[houseid][hBank],HouseInfo[houseid][hWeapon][0],HouseInfo[houseid][hWeapon][1],HouseInfo[houseid][hWeapon][2],HouseInfo[houseid][hWeapon][3],HouseInfo[houseid][hWeapon][4]);
    strcat(_mainquery, _query);
    format(_query, sizeof _query, "hAmmo0='%i', hAmmo1='%i', hAmmo2='%i', hAmmo3='%i', hAmmo4='%i', hHealth='%i', hDrugs='%i', hMats='%i' WHERE hID='%i'",
    HouseInfo[houseid][hAmmo][0],HouseInfo[houseid][hAmmo][1],HouseInfo[houseid][hAmmo][2],HouseInfo[houseid][hAmmo][3],HouseInfo[houseid][hAmmo][4],HouseInfo[houseid][hHealth],HouseInfo[houseid][hDrugs],HouseInfo[houseid][hMats],
    houseid);
    strcat(_mainquery, _query);
    strdel(_query,0,sizeof(_query));
    printf("5, %s", _mainquery);
    mysql_query(MySQL_Connection, _mainquery);
    print("6");
    if(_debug == 1) printf(" - Haus %i wurde gespeichert.", houseid);
    return 1;
    }


    Bevor ich die Datenbank umbenannt hatte, hatte es funktioniert 8| iwie misteriös.


    MfG
    Adrian

  • Sieht so aus als wäre es erledigt, aber ich geb einfach trotzdem mal meinen Senf dazu...


    Muss ja hier dran liegen:
    new _mainquery[2028], _query[314];


    Was ich eher weniger glaube, ist dass die Size des Arrays zu groß ist...
    Ist aber möglich oO


    Woran lags denn?