Problem mit Schleife

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,
    ich habe (mal wieder) ein Problem in meinem Script. Wenn ich mich einlogge und dann automatisch spawne, bekomme ich weder das Geld aus der MySQL-Tabelle, noch kann ich irgendwelche Commands nutzen. Das einzige was ich vorher verändert habe ist, dass kein Bot mehr connectet. Dies kann ich aber nicht rückgängig machen, da es die Lösung meines letzten Problems ist. (Wenn der Bot auf dem Server ist, kann ich nicht mehr verbinden)


    Ich nehme nicht an, dass ich OnPlayerSpawn hier zeigen muss, da das wahrscheinlich nur wenig mit dem Problem zu tun hat und da alle möglichen Abfragen drin sind. Vielleicht ist es ja ein generelles Problem. Wenn es doch benötigt wird, poste ich es hier.


    Siehe 3. Beitrag!

    Mit freundlichen Grüßen
    Padarom

    Ich bin
    .. seit etwa 2007 in der Webentwicklung tätig, seit 2013 professionell
    .. Erfahrener Entwickler in PHP, Swift, Javascript, Typescript und Ruby. Zusätzlich habe ich Erfahrung in Python, Java, C#, C++, Prolog und einigen esoterischen Programmiersprachen
    .. Luftfahrtenthusiast und Segelflieger

    2 Mal editiert, zuletzt von Padarom ()

  • dann zeig mal wie du die sachen aus der Tabelle lädst :)
    Also den teil wo das Problem ist. So ist es besser zu beurteilen wo das problem sein könnte. Wenn ich ma drüber schau seh ich vielleicht den fehler, da mein script auch über MySQL läuft ;)


    MFG, Robdeflop®

  • Es ging ja die ganze Zeit auch - Ich kenne mich mit der MySQL-Syntax aus und darin ist kein Fehler. Konsole gibt auch keinen Fehler zurück. Erst seit der Bot entfernt ist, habe ich das Problem.
    Commands kann ich wie gesagt auch nicht nutzen.


    Mit freundlichen Grüßen
    Padarom


    **edit**
    Habe vergessen zu erwähnen, dass auch keine Fahrzeuge dargestellt werden. Die Konsole sagt mir zwar "Loaded vehicle models: 10", aber auf der Map sehe ich keine.


    **edit**
    Komisch, es lag doch an einem MySQL-Part. Und zwar an folgendem:

    for(new i=0; i<MH; i++) // MH ist definiert mit #define MH MAX_PLAYERS
    {
    new home[5], lab[128];
    format(query,sizeof query,"SELECT * FROM `haus` WHERE `HausID` = '%d'",i);
    mysql_query(query);
    mysql_store_result();
    while(mysql_num_rows())
    {
    mysql_fetch_field("HausX",home[0]);
    mysql_fetch_field("HausY",home[1]);
    mysql_fetch_field("HausZ",home[2]);
    mysql_fetch_field("HausBesitzer",home[3]);
    mysql_fetch_field("HausPreis",home[4]);
    format(lab,sizeof lab,"Kosten: %d$\nBesitzer: %s",home[4],home[3]);
    if(strcmp(home[3],"niemand",true)==0)
    {
    CreatePickup(1273, 1, home[0], home[1], home[2], -1);
    }
    else if(strcmp(home[3],"Niemand",true)==1)
    {
    CreatePickup(1272, 1, home[0], home[1], home[2], -1);
    }
    else if(home[4] < GetPlayerMoney(playerid))
    {
    CreatePickup(1272, 1, home[0], home[1], home[2], -1);
    Create3DTextLabel(lab, GRUN, home[0], home[1], home[2]+0.3, 40.0, 0);
    }
    }
    mysql_free_result();
    }
    Soll bewirken: Aus der MySQL-Tabelle werden alle Koordinaten der gespeicherten Häuser geladen. Dazu auch der Preis u. der Besitzer. Wenn der Preis niedriger ist als das Geld des Spielers wird ein grünes Pickup angezeigt. Ansonsten (wenn der Preis höher ist oder das Haus schon einen Besitzer hat (Besitzer ungleich "Niemand")) ein blaues Pickup.


    Wie funktioniert das richtig?

    Ich bin
    .. seit etwa 2007 in der Webentwicklung tätig, seit 2013 professionell
    .. Erfahrener Entwickler in PHP, Swift, Javascript, Typescript und Ruby. Zusätzlich habe ich Erfahrung in Python, Java, C#, C++, Prolog und einigen esoterischen Programmiersprachen
    .. Luftfahrtenthusiast und Segelflieger

    2 Mal editiert, zuletzt von Padarom ()

  • hmm sry, kann auch nix erkennen, daran sollte es eig net liegen. vielleicht iwas anderes gelöscht? kann ja ma passieren.
    Mir isses ma passiert dass ich so doof war un mysql sachen abgefragt hab, bevor das mysql connect kram kommt, un hab stundenlang gesucht why der server abschmiert xD


    MFG, Robdeflop®

  • Es liegt daran, als ich diesen Teil ausgeklammert habe, wurde mein Geld geladen und alles hat perfekt funktioniert.
    Also ist daran irgendein Fehler.

    Ich bin
    .. seit etwa 2007 in der Webentwicklung tätig, seit 2013 professionell
    .. Erfahrener Entwickler in PHP, Swift, Javascript, Typescript und Ruby. Zusätzlich habe ich Erfahrung in Python, Java, C#, C++, Prolog und einigen esoterischen Programmiersprachen
    .. Luftfahrtenthusiast und Segelflieger

    6 Mal editiert, zuletzt von Padarom ()