Beiträge von Kaliber

    Benutze den sscanf stock, kann ja mal ausprobieren wie es mit dem aktuellstem include läuft

    1. Offensichtlich benutzt du nicht nur die sscanf Funktion, sondern hast das Include inkludiert, welches ein Plugin benötigt.


    2. Also pack das Plugin mit rein, lösche deinen "sscanf stock" und verwende das Include.


    3. Hast du a_npc inkludiert, lösche dies.

    Ja sscanf wird nicht richtig geladen...


    Was steht denn bei einem normalen Server Start?


    Kann es eventuell sein, dass du in deinem Gamemode #include <a_npc> stehen hast? Wenn ja -> löschen!

    das man mir gesagt hat ich soll mein Router neu starten sonst kam da halt immer diese Meldung das man gebannt ist.

    Nein, dann hatten die die Funktion [wiki]Ban[/wiki] verwendet. Diese sorgt dafür, dass deine IP gebannt wird und durch einen Router restart, bekommst du eine andere IP.


    Hier verwendet er aber nur Kick und prüft ob der Account gebannt ist.

    He?!


    mysql_tquery gehört zu der neuen Version...


    Ein einfaches mysql_query(connection, query); hätte vollkommen gereicht.


    Wenn du die neue Version verwendest, kannst dir das ganze mysql_real_escape_string schenken und einfach %e anstatt %s im mysql_format verwenden.


    PS: Das Wiki zu nutzen ist ganz unabhängig von der Erfahrung mit irgendeiner Funktion. Eigentlich sollte da die Tendenz sogar stärker sein, erstmal das wiki zu nutzen.

    //E:

    Sag mal..ist das jetzt dein Ernst? :huh:


    Seit wie vielen Jahren bitte skriptest du schon und dann kommst du immer noch nicht auf die Idee mal ganz kurz ins Wiki zu schauen, sondern fragst hier, damit jemand für dich ins Wiki schaut oder das weiß?!?!?!


    https://wiki.sa-mp.com/wiki/MySQL/R33#mysql_query


    Wie du siehst, muss der 1. Parameter dein connection handle sein, also die Variable, die du erhälst, wenn du mysql_connect verwendest...

    Was geht denn nicht?


    Dass dir das doppelt angezeigt wird liegt nur daran, dass das immer alles einzeln geladen wird.


    Solltest das so schreiben:


    Das Problem das ich hier sehe ist Array-Verschwendung.


    Also man kann es so lösen, aber das ist nicht gerade elegant, da wenn du z.B. 100 Unternehmen hast und davon ist index 30 und index 98 eine Tankstelle.


    Dann steht in tankInfo[30] etwas und in tankInfo[98] etwas.


    Der ganze Rest ist leer.


    Bräuchtest also eigentlich auch nur tankInfo[0] und tankInfo[1], sprich 2 Cells, wohingegen du hier 100 reservierst.


    Aber gut...das nur mal als Anmerkung.


    Und in Zeile 56 von meinem Code, da wolltest du doch bInfo[dbid][id_x] schreiben, oder? ^^


    Des weiteren wäre das effizienter nicht für jede Tankstelle einen Query auszuführen, sondern einfach einen JOIN zu benutzen und dann alle Tankstellen auf einmal zu laden.

    Kennt jemand zufällig das Rageban Include?

    Da gibt es nicht "das Include" es gibt sehr viele.


    Und das ist auch sehr einfach selbst zu schreiben, musst ja nur die Ip splitten und dann in der Datenbank speichern, fertig.


    https://forum.sa-mp.com/showthread.php?t=295759


    https://forum.sa-mp.com/showthread.php?t=446692


    https://forum.sa-mp.com/showthread.php?t=608273


    1x suchen, wird man in ein paar Threads fündig, wo man sich inspirieren lassen kann ^^

    mysql_real_escape_string(Table, Table); //3080

    Wieso verwendest du das älteste MySQL Plugin? ^^


    Ich meine, heute gibt es so schöne so gute Alternativen...


    Naja, das klappt nicht, weil die Größe von dem Array nicht der Funktion übergeben wird.


    Musst da sowas machen:



    und query sollteste auch lokal deklarieren ^^

    Du kannst nicht die playerid verwenden, da die sich doch jedes mal ändert und wenn der Spieler offline ist schon gar nicht existiert.


    Du musst einfach nur den Namen von dem Spieler verwenden, das ist der eindeutige Key und nicht die playerid ^^

    Lies bitte noch mal meinen Beitrag. Ich rede eigentlich nirgends von listitem.



    welche Datenbank ID der Player hat den ich ausgewählt habe.

    Habe doch exakt erklärt was du dann tun kannst. Du hast den Namen des Spielers, dieser ist ein eindeutiger Key für deine MySQL Tabelle.


    Jetzt kannst du sowas machen:



    C
    format(string,sizeof(string),"UPDATE `K_Accounts` SET `admin`='0' WHERE `name`='%s'",inputtext);

    So kannst du dann dem Spieler z.B. sein Adminlevel entziehen.


    Mit [wiki]SetPVarString[/wiki] kannst du inputtext natürlich auch ganz einfach zwischenspeichern :)

    Ja, ist irgendwie komisch, manche Funktionen buggen und werden nicht angezeigt.


    Da hilft ein schneller Blick ins Wiki: [wiki]GetPVarFloat[/wiki] und du weißt, ahh ja die Funktion existiert :D


    Und natürlich, kannst du das damit zwischenspeichern ;)

    Unter [wiki]OnDialogResponse[/wiki], hast du ja einmal listitem, aber auch inputtext.


    In diesem Fall bei DIALOG_STYLE_TABLIST_HEADERS entspricht inputtext exakt dem ersten Eintrag, also dem Namen von dem listitem.


    Sagen wir dein Dialog sieht so aus:



    Code
    Kaliber\tBabo\tOnline\n
    reaL.\tChabo\tOnline

    Klickt man jetzt auf listitem 1, entspricht inputtext = "Kaliber" und klickt man auf 2, entspricht inputtext "reaL."


    Das bedeutet, wenn du dann etwas ändern willst, hast du direkt den Namen und kannst über SQL direkt etwas ändern und natürlich auch mit ReturnUser die playerid von dem Spieler herausfinden, falls dieser online ist und diesen bearbeiten :)


    //Edit: Hier mal eine detaillierte Liste: http://wiki.sa-mp.com/wiki/Dialog_Styles

    @XonarZ


    Hmm, also da du das nur auf die 2. Stelle genau haben willst, funktioniert das eigentlich perfekt:



    Also bei mir funktioniert das alles perfekt.


    Kann es sein, dass du bei der Zuweisung einen Fehler gemacht hast oder so? :)