19.08.2009, 20:17
Hello, I funktionirt mien register here do not look at the codes
Код:
if(strcmp(cmdtext, "/register", true) == 0) { new str[256]; new password[14], tmp[128], RPassword[14]; //tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid,ADMIN_RED,"Gib /register <Passwort> ein, um dich zu registrieren!"); return 1; } password[13] = strval(tmp); GetPlayerName(playerid, PlayerName, sizeof(PlayerName)); GetPlayerIp(playerid, PlayerIP, sizeof(PlayerIP)); if(MySQLCheckUserExistance(playerid)) { SendClientMessage(playerid,ADMIN_RED,"Dein Nickname ist bereits registriert, bitte log dich mit /login <Passwort> ein!"); return 1; } if(strfind(tmp, ">", true) != -1 || strfind(tmp, "<", true) != -1) { SendClientMessage(playerid,ADMIN_RED,"Falsches Zeichen im Passwort"); return 1; } if(strlen(tmp) > 5) { SendClientMessage(playerid,ADMIN_RED,"Dein Passwort kann nicht lдnger als 5 Zeichen sein!"); return 1; } samp_mysql_real_escape_string(tmp, RPassword); format(query, sizeof(query), "INSERT INTO `spieler` (reg_id) VALUES (0)"); format(query, sizeof(query), "INSERT INTO `spieler` (name) VALUES (%s)",playername); format(query, sizeof(query), "INSERT INTO `spieler` (password) VALUES (%s)",RPassword); format(query, sizeof(query), "INSERT INTO `spieler` (admin_level) VALUES (0)"); format(query, sizeof(query), "INSERT INTO `spieler` (IP) VALUES (%s)",PlayerIP); format(query, sizeof(query), "INSERT INTO `spieler` (money) VALUES (0)"); samp_mysql_query(query); format(query, sizeof(query), "SELECT `reg_id` FROM `spieler` WHERE `name` = '%s'", PlayerName); samp_mysql_query(query); samp_mysql_store_result(); if(samp_mysql_num_rows() == 0) { format(str, sizeof(str), "Kann nicht in die Datenbank %s schreiben", MYSQL_DB); SendClientMessage(playerid, COLOR_RED, str); return 1; } SendClientMessage(playerid,ADMIN_GREEN,"Du hast dich erfolgreich registriert. Gib /login <Passwort> ein."); return 1; } //-------------------------// Login // --------------------------------- if(strcmp(cmdtext, "/login", true) == 0) { new str[256]; new password[14], tmp[128]; //tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid,ADMIN_RED,"Gib /login <Passwort> ein, um dich zu einzuloggen!"); return 1; } password[13] = strval(tmp); GetPlayerName(playerid, PlayerName, sizeof(PlayerName)); GetPlayerIp(playerid, PlayerIP, sizeof(PlayerIP)); if(PlayerInfo[playerid][Logged] == 1) { SendClientMessage(playerid,ADMIN_YELLOW,"Du bist bereits eingeloggt!"); return 1; } if(!MySQLCheckUserExistance(playerid)) { SendClientMessage(playerid,ADMIN_RED,"Du bist noch nicht registriert, bitte registriere dich mit /register <Passwort>."); return 1; } format(query, sizeof(query), "SELECT * FROM `spieler` WHERE `PlayerName` = '%s'", PlayerName); samp_mysql_query(query); samp_mysql_store_result(); samp_mysql_fetch_row(line); new passwd[14]; samp_mysql_get_field("password", passwd); if(strcmp(tmp, passwd, true) != 0) { if(PlayerInfo[playerid][FalseLogins] < 3) { PlayerInfo[playerid][FalseLogins] = PlayerInfo[playerid][FalseLogins] + 1; format(str, sizeof(str), "Fehler: %s ist das falsche Passwort fьr den Account %s! (Warnung: Falsches Passwwort %d/3)", tmp, PlayerName, PlayerInfo[playerid][FalseLogins]); SendClientMessage(playerid, ADMIN_RED, str); } else { PlayerInfo[playerid][FalseLogins] = 3; format(str, sizeof(str), "Fehler: %s ist das falsche Passwort fьr den Account %s! (3/3 Warnung: Falsches Passwort voll)", tmp, PlayerName); SendClientMessage(playerid, ADMIN_RED, str); SendClientMessage(playerid, ADMIN_RED,"KICK: 3 falsche Loginversuche"); Kick(playerid); } return 1; } SendClientMessage(playerid,ADMIN_GREEN,"Du hast dich erfolgreich eingeloggt."); PlayerInfo[playerid][Logged] = 1; samp_mysql_get_field("position", str); SetPlayerScore(playerid, strval(str)); samp_mysql_get_field("money", str); GivePlayerMoney(playerid, strval(str)); samp_mysql_get_field("admin_level", str); PlayerInfo[playerid][Admin] = strval(str); samp_mysql_get_field("times_logged", str); PlayerInfo[playerid][TimesLogged] = strval(str); PlayerInfo[playerid][TimesLogged] += 1; new smail[60]; samp_mysql_get_field("email", smail); format(query, sizeof(query), "UPDATE `spieler` SET `times_logged` = '%d' WHERE `PlayerName` = '%s'", PlayerInfo[playerid][TimesLogged], PlayerName); samp_mysql_query(query); return 1; }