Wollte gerade kollegen auf den Server drauf lassen, aber es wird kein 2 Spieler gespeichert.
Ich schick euch mal den gesamten Code des Login-Register System vielleicht kann mir einer helfen.
public OnPlayerRequestClass(playerid, classid)
{
if(mysql_CheckAccount(playerid) == 1) {
showDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,""_Weiß"[GCC] Loginfenster",""_Weiß"Bitte gebe dein Passwort ein","Login","Abbruch");
InterpolateCameraPos(playerid, 2356.6528, -1742.2469, 142.7728, 1174.76, -1377.98, 150.88, 50000, CAMERA_MOVE);
InterpolateCameraLookAt(playerid, 1513.8353, -1655.7241, 58.0422, 1513.8353, -1655.7241, 58.0422, 50000, CAMERA_MOVE);
} else {
showDialog(playerid,DIALOG_PASSWORT,DIALOG_STYLE_PASSWORD,""_Weiß"[GCC] Registrierung",""_Weiß"Dein Account wurde nicht gefunden.\nBitte erstelle dir nun ein Account indem du hier dein Passwort eingibst.","Weiter","Abbruch");
InterpolateCameraPos(playerid, 2356.6528, -1742.2469, 142.7728, 1174.76, -1377.98, 150.88, 50000, CAMERA_MOVE);
InterpolateCameraLookAt(playerid, 1513.8353, -1655.7241, 58.0422, 1513.8353, -1655.7241, 58.0422, 50000, CAMERA_MOVE);
}
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
switch(dialogid) {
case DIALOG_LOGIN: {
if(!response) return kickSpieler(playerid,"Login Abbruch");
if(response) {
if(strcmp(inputtext,mysql_ReturnPasswort(SpielerName(playerid)),false))
{
showDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,""_Weiß"[GCC] Loginfenster",""_Weiß"Bitte gebe dein korrektes Passwort ein","Login","Abbruch");
return 1;
}
else if(strcmp(inputtext,mysql_ReturnPasswort(SpielerName(playerid)),true))
{
SpielerLaden(playerid);
spawnSpieler(playerid);
}
}
}
case DIALOG_PASSWORT: {
if(!response) return kickSpieler(playerid,"Registrierungs Abbruch");
if(response) {
if(!strlen(inputtext)) {
showDialog(playerid,DIALOG_PASSWORT,DIALOG_STYLE_PASSWORD,""_Weiß"[GCC] Registrierung",""_Weiß"Dein Account wurde nicht gefunden.\nBitte erstelle dir nun ein Account indem du hier dein Passwort eingibst.","Weiter","Abbruch");
return 1;
} else {
CreateAccount(playerid,inputtext);
QuizFehler[playerid] = 0;
sendMessage(playerid,Hellblau,"[Info]: "_Weiß"Du hast dich erfolgreich Registriert.");
showDialog(playerid,DIALOG_GESCHLECHT,DIALOG_STYLE_LIST,""_Weiß"[GCC] Registrierung - Geschlecht","Männlich\nWeiblich","Weiter","Abbruch");
}
}
}
stock mysql_CheckAccount(playerid)
{
new Query[128],Name[MAX_PLAYER_NAME],count;
GetPlayerName(playerid, Name, MAX_PLAYER_NAME);
mysql_real_escape_string(Name, Name);
format(Query, sizeof(Query), "SELECT * FROM `spieler` WHERE `Name` = '%s'", Name);
mysql_query(Query);
mysql_store_result();
count = mysql_num_rows();
mysql_free_result();
return count;
}
stock CreateAccount(playerid, pass[])
{
new query[256],Name[MAX_PLAYER_NAME];
GetPlayerName(playerid, Name, MAX_PLAYER_NAME);
mysql_real_escape_string(Name,Name);
mysql_real_escape_string(pass,pass);
format(query, sizeof(query), "INSERT INTO `spieler` (`Name`, `Passwort`) VALUES ('%s', '%s')", Name, pass);
mysql_query(query);
r_mysql_SetInt("Geld",0);
r_mysql_SetInt("Level",0);
r_mysql_SetInt("Levelexp",0);
r_mysql_SetInt("SkinID",32);
r_mysql_SetInt("Adminlevel",0);
r_mysql_SetInt("Geschlecht",0);
r_mysql_SetInt("Startbonus",0);
r_mysql_SetInt("SpawnChange",0);
r_mysql_SetInt("Verwarnungen",0);
r_mysql_SetInt("Fraktion",0);
r_mysql_SetInt("Leader",0);
r_mysql_SetInt("Frakrang",0);
r_mysql_SetInt("DutySkin",32);
r_mysql_SetInt("StateDuty",0);
r_mysql_SetInt("ZeitSeitPayday",0);
r_mysql_SetInt("Lohn",533);
r_mysql_SetInt("Fraklohn",0);
r_mysql_SetInt("Perso",0);
r_mysql_SetInt("Praxis",0);
r_mysql_SetInt("Theorie",0);
r_mysql_SetInt("FSchein",0);
r_mysql_SetInt("MPraxis",0);
r_mysql_SetInt("MTheorie",0);
r_mysql_SetInt("MSchein",0);
r_mysql_SetInt("HausID",999);
r_mysql_SetInt("BizzID",999);
r_mysql_SetInt("Lokal",999);
r_mysql_SetInt("Job",0);
r_mysql_SetInt("StateJob",0);
return true;
}
/*stock SpielerRegistrieren()
{
new name [MAX_PLAYER_NAME];
if(r_LoadSQLEntrance("spieler","name",name))
{
r_mysql_SetInt("Geld",0);
r_mysql_SetInt("Level",0);
r_mysql_SetInt("Levelexp",0);
r_mysql_SetInt("Skin",32);
r_mysql_SetInt("Adminlevel",0);
r_mysql_SetInt("Geschlecht",0);
r_mysql_SetInt("Startbonus",0);
r_mysql_SetInt("SpawnChange",0);
r_mysql_SetInt("Verwarnungen",0);
r_mysql_SetInt("Fraktion",0);
r_mysql_SetInt("Leader",0);
r_mysql_SetInt("Frakrang",0);
r_mysql_SetInt("DutySkin",32);
r_mysql_SetInt("StateDuty",0);
r_mysql_SetInt("ZeitSeitPayday",0);
r_mysql_SetInt("Lohn",533);
r_mysql_SetInt("Fraklohn",0);
r_mysql_SetInt("Perso",0);
r_mysql_SetInt("Praxis",0);
r_mysql_SetInt("Theorie",0);
r_mysql_SetInt("FSchein",0);
r_mysql_SetInt("MPraxis",0);
r_mysql_SetInt("MTheorie",0);
r_mysql_SetInt("MSchein",0);
r_mysql_SetInt("HausID",999);
r_mysql_SetInt("BizzID",999);
r_mysql_SetInt("Lokal",999);
r_mysql_SetInt("Job",0);
r_mysql_SetInt("StateJob",0);
r_UnloadSQLEntrance();
}
}*/
stock mysql_ReturnPasswort(Name[])
{
new query[130], Get[130];
mysql_real_escape_string(Name, Name);
format(query, 128, "SELECT `passwort` FROM `spieler` WHERE `Name` = '%s'", Name);
mysql_query(query);
mysql_store_result();
mysql_fetch_row(Get);
mysql_free_result();
return Get;
}
stock SpielerLaden(playerid)
{
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
if(r_LoadSQLEntrance("spieler","name",name))
{
giveMoney(playerid,r_mysql_GetInt("Geld"));
setLevel(playerid,r_mysql_GetInt("Level"));
SpielerInfo[playerid][Levelexp] = r_mysql_GetInt("Levelexp");
setSkin(playerid, r_mysql_GetInt("Skin"));
SpielerInfo[playerid][Adminlevel] = r_mysql_GetInt("Adminlevel");
SpielerInfo[playerid][Geschlecht] = r_mysql_GetInt("Geschlecht");
SpielerInfo[playerid][Startbonus] = r_mysql_GetInt("Startbonus");
SpielerInfo[playerid][SpawnChange] = r_mysql_GetInt("SpawnChange");
SpielerInfo[playerid][Verwarnungen] = r_mysql_GetInt("Verwarnungen");
SpielerInfo[playerid][Fraktion] = r_mysql_GetInt("Fraktion");
SpielerInfo[playerid][Leader] = r_mysql_GetInt("Leader");
SpielerInfo[playerid][Frakrang] = r_mysql_GetInt("Frakrang");
SpielerInfo[playerid][DutySkin] = r_mysql_GetInt("DutySkin");
SpielerInfo[playerid][StateDuty] = r_mysql_GetInt("StateDuty");
SpielerInfo[playerid][ZeitSeitPayday] = r_mysql_GetInt("ZeitSeitPayday");
SpielerInfo[playerid][Lohn] = r_mysql_GetInt("Lohn");
SpielerInfo[playerid][Fraklohn] = r_mysql_GetInt("Fraklohn");
SpielerInfo[playerid][Perso] = r_mysql_GetInt("Perso");
SpielerInfo[playerid][Praxis] = r_mysql_GetInt("Praxis");
SpielerInfo[playerid][Theorie] = r_mysql_GetInt("Theorie");
SpielerInfo[playerid][FSchein] = r_mysql_GetInt("FSchein");
SpielerInfo[playerid][MPraxis] = r_mysql_GetInt("MPraxis");
SpielerInfo[playerid][MTheorie] = r_mysql_GetInt("MTheorie");
SpielerInfo[playerid][MSchein] = r_mysql_GetInt("MSchein");
SpielerInfo[playerid][HausID] = r_mysql_GetInt("HausID");
SpielerInfo[playerid][BizzID] = r_mysql_GetInt("BizzID");
SpielerInfo[playerid][Lokal] = r_mysql_GetInt("Lokal");
SpielerInfo[playerid][Job] = r_mysql_GetInt("Job");
SpielerInfo[playerid][StateJob] = r_mysql_GetInt("StateJob");
printf("Die Spielerdaten von Spieler %s wurde erfolgreich geladen.",SpielerName(playerid));
r_UnloadSQLEntrance();
}
}
stock SpielerSpeichern(playerid)
{
new name [MAX_PLAYER_NAME];
if(r_LoadSQLEntrance("spieler","name",name))
{
r_mysql_SetInt("Geld",getMoney(playerid));
r_mysql_SetInt("Level",getLevel(playerid));
r_mysql_SetInt("Levelexp",SpielerInfo[playerid][Levelexp]);
r_mysql_SetInt("Skin",getSkin(playerid));
r_mysql_SetInt("Adminlevel",SpielerInfo[playerid][Adminlevel]);
r_mysql_SetInt("Geschlecht",SpielerInfo[playerid][Geschlecht]);
r_mysql_SetInt("Startbonus",SpielerInfo[playerid][Startbonus]);
r_mysql_SetInt("SpawnChange",SpielerInfo[playerid][SpawnChange]);
r_mysql_SetInt("Verwarnungen",SpielerInfo[playerid][Verwarnungen]);
r_mysql_SetInt("Fraktion",SpielerInfo[playerid][Fraktion]);
r_mysql_SetInt("Leader",SpielerInfo[playerid][Leader]);
r_mysql_SetInt("Frakrang",SpielerInfo[playerid][Frakrang]);
r_mysql_SetInt("DutySkin",SpielerInfo[playerid][DutySkin]);
r_mysql_SetInt("StateDuty",SpielerInfo[playerid][StateDuty]);
r_mysql_SetInt("ZeitSeitPayday",SpielerInfo[playerid][ZeitSeitPayday]);
r_mysql_SetInt("Lohn",SpielerInfo[playerid][Lohn]);
r_mysql_SetInt("Fraklohn",SpielerInfo[playerid][Fraklohn]);
r_mysql_SetInt("Perso",SpielerInfo[playerid][Perso]);
r_mysql_SetInt("Praxis",SpielerInfo[playerid][Praxis]);
r_mysql_SetInt("Theorie",SpielerInfo[playerid][Theorie]);
r_mysql_SetInt("FSchein",SpielerInfo[playerid][FSchein]);
r_mysql_SetInt("MPraxis",SpielerInfo[playerid][MPraxis]);
r_mysql_SetInt("MTheorie",SpielerInfo[playerid][MTheorie]);
r_mysql_SetInt("MSchein",SpielerInfo[playerid][MSchein]);
r_mysql_SetInt("HausID",SpielerInfo[playerid][HausID]);
r_mysql_SetInt("BizzID",SpielerInfo[playerid][BizzID]);
r_mysql_SetInt("Lokal",SpielerInfo[playerid][Lokal]);
r_mysql_SetInt("Job",SpielerInfo[playerid][Job]);
r_mysql_SetInt("StateJob",SpielerInfo[playerid][StateJob]);
printf("Die Spielerdaten von Spieler %s wurde in der Datenbank gespeichert.",SpielerName(playerid));
r_UnloadSQLEntrance();
}
}
[13:35:30] ---------------------------
[13:35:30] MySQL Debugging activated (03/26/13)
[13:35:30] ---------------------------
[13:36:13] >> mysql_real_escape_string( Connection handle: 1 )
[13:36:13] CMySQLHandler::EscapeString(Vanillekeks); - Escaped 11 characters to Vanillekeks.
[13:36:13] >> mysql_query( Connection handle: 1 )
[13:36:13] CMySQLHandler::Query(SELECT * FROM `spieler` WHERE `Name` = 'Vanillekeks') - Successfully executed.
[13:36:13] >> mysql_store_result( Connection handle: 1 )
[13:36:13] CMySQLHandler::StoreResult() - Result was stored.
[13:36:13] >> mysql_num_rows( Connection handle: 1 )
[13:36:13] CMySQLHandler::NumRows() - Returned 0 row(s)
[13:36:13] >> mysql_free_result( Connection handle: 1 )
[13:36:13] CMySQLHandler::FreeResult() - Result was successfully free'd.
[13:36:19] >> mysql_real_escape_string( Connection handle: 1 )
[13:36:19] CMySQLHandler::EscapeString(Vanillekeks); - Escaped 11 characters to Vanillekeks.
[13:36:19] >> mysql_real_escape_string( Connection handle: 1 )
[13:36:19] CMySQLHandler::EscapeString(test123); - Escaped 9 characters to test123.
[13:36:19] >> mysql_query( Connection handle: 1 )
[13:36:19] CMySQLHandler::Query(INSERT INTO `spieler` (`Name`, `Passwort`) VALUES ('Vanillekeks', 'test123')) - An error has occured. (Error ID: 1062, Duplicate entry '0' for key 'PRIMARY')
PS:MySQL Debug ist drinne