[SAMMELTHREAD] Kleine Scripting Fragen

Dein Problem konnte durch einen User gelöst werden? Bedank dich bei ihm indem du seinen Beitrag als Hilfreich markierst sowie einen Daumen oben dalässt
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
  • Formatier das mal bitte vernünftig

  • new string[128], query[300], name[MAX_PLAYER_NAME];
    GetPlayerName(playerid, name, sizeof(name));
    mysql_format(mysql, query, sizeof(query), "INSERT INTO `spieler` (`name`, `passwort`) VALUES ('%s', md5('%s'))", name, inputtext);
    mysql_query(mysql, query);
    format(string, sizeof(string), "SERVER: {FFFFFF}You have successfully registered (Password: %s)", inputtext);
    SendClientMessage(playerid, COLOR_LIGHTRED, string);
    ShowPlayerDialog(playerid, 2, DIALOG_STYLE_PASSWORD, "Login","Please enter your password below to login", "Login", "Quit"); // foward to login screen


    @'MnX' Danke ist mir vorhin nicht aufgefallen, der editor übernahm leider nicht die Absätze.



    MfG
    Pytroxis

  • Wieso kommt immer
    Der name existiert auf dem Server schon.
    obwohl er noch nicht existiert ?

    Code
    for(new i = 0;i <= MAX_PLAYERS;i++)
    	{
    	    if(strcmp(Name,getPlayerName(i)))
    		{
    			SendClientMessage(playerid,ROT,"Der Name existiert auf dem Server schon.");
    			return 1;
    		}
    	}
  • C
    if(strcmp(Name,getPlayerName(i)))

    zu


    C
    if(!strcmp(Name,getPlayerName(i)))

    strcmp gibt nämlich 0 (also "!") zurück, wenn die beiden Strings identisch sind.

  • Immernoch das gleiche Problem



    reaL. reaL.
    Hallo reaL.
    Hallo

    Code
    for(new i = 0;i <= MAX_PLAYERS;i++)
    	{
    	    printf("%s %s",Name,getPlayerName(i));
    	    if(!strcmp(Name,getPlayerName(i))) return SendClientMessage(playerid,ROT,"Der Name existiert auf dem Server schon.");
    	}
  • Beitrag von Dog ()

    Dieser Beitrag wurde vom Autor aus folgendem Grund gelöscht: geklärt durch den Edit ().
  • Habe es nun so
    soll ich trotzdem noch IsPlayerConnected(i) abfragen ?

  • Zum Auslesen des Wertes, falls du ihn nicht kennst:

    SQL
    SELECT `AUTO_INCREMENT`
    FROM  INFORMATION_SCHEMA.TABLES
    WHERE TABLE_SCHEMA = 'Datenbank'
    AND   TABLE_NAME   = 'Tabelle'


    Zum setzen:

    SQL
    ALTER TABLE tabelle AUTO_INCREMENT = neuer_wert


    Achte darauf, dass bei InnoDB der Wert nicht kleiner gesetzt werden kann, als der größte Eintrag + 1 (z.B. id = 2 existiert, dann muss A_I mindestens 3 sein).