Debug Problem mit public OnQueryError

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 Leute Ich braucht eure hilfe ich weiß nicht woran das liegt Kann da einer helfen MfG luiluiboy014

  • Wenn ich dir einen Tipp geben kann , download dir das neuste Crashdetect Plugin , und kompiliere dein Skript mit dem Parameter -d3
    dazu erstellst im pawno ordner eine pawn.cfg und schreibst -d3 rein.


    Nun sollte dir in der serverlog die genau Zeile angezeigt werden

  • der zeigt mir höstens nur das hier an

  • Habe jetzt was Bekommen





    habe den fehler gefunden

  • Also falls du den Fehler noch nicht behoben hast


    musst du halt schauen wie du den Fehler vermeiden kannst


    • [18:01:32] [debug] Run time error 4: "Array index out of bounds"
    • [18:01:32] [debug] Accessing element at index 20 past array upper bound 19
    • [18:01:32] [debug] AMX backtrace:
    • [18:01:32] [debug] #0 0065c5f4 in public OnQueryFinish (index[]=@0154c3bc "SELECT * FROM ML_networktowers", sqlresultid=6, extraid=0, SconnectionHandle=1) at C:\Users\Jeremias Benedikt\Desktop\winreducerex100\Server\gamemodes\GeTmyselfmade.pwn:75660


    Wie du bereits ja schon gut erkannt hast wird die Zeile direkt angegeben in der, der Fehler vermutlich steckt (Bsp: Zeile: 75660 )
    Jetzt wirst du dort ein Array haben mit der Größe von 20 (Das Array hat indexe die von 0 - 19 gehen) und in dieser Zeile (75660) wird auf den index 20 zugegriffen der ja nicht existiert da das Array nur von 0 - 19 geht.



    Dasselbe lässt sich auf den anderen Fehler auch anwenden.



    Falls du da Probleme hast kannst du den Code auch hier posten aber da bitte den ganzen Inhalt von dem Anweisungsblock bei case 6 und case 14

  • Ich finde hier kein fehler



    das hier ist 75985


    fverwaltungen[fvr][Geld] = strval(result);


    ist aber nix

  • Also ich geh mal davon aus das du wahrscheinlich mehr als 20 Einträge hast in der DB
    Daher kannst du entweder
    while(fvr<rows)
    Zu


    while(fvr != sizeof(fverwaltung))


    ändern oder du erhöhst die Größe des Arrays fverwaltung von 20 auf bsp 30


    new fverwaltung[30]...