Hallo zusammen,
ich bin neu im Thema MySQL und sitze jetzt schon länger an einer Stelle fest. Ich möchte während der Registrierung das Geburtsdatum des Spielers abfragen. Dazu muss er es in einem Dialog (Style_input) im Format tt.mm.jjjj eintragen. Gespeichert wird das ganze ja dann im Inputtext. Diesen Inputtext übergebe ich dann an einen String, welcher nachher in der MySQL Tabelle gespeichert werden soll. Das Problem ist jedoch, dass in der Tabelle dann nur ein leeres Feld zu sehen ist. Zur Kontrolle habe ich mir den String mal ingame als ClientMessage ausgeben lassen und da steht er so, wie er auch sein soll. Das Problem muss also irgendwo beim MySQL Teil liegen.
Oben im Script:
new Alter[MAX_PLAYERS];
Der Dialog, in dem das Alter eingetragen werden muss:
if(dialogid == DIALOG_REGISTER_ALTER)
{
if(response == 1)
{
if(strlen(inputtext) == 10)
{
new query[128],Name[MAX_PLAYER_NAME];
GetPlayerName(playerid,Name,sizeof(Name));
format(Alter[playerid],128,"%s",inputtext);
SendClientMessage(playerid,GELB,Alter[playerid]); //Zur ingame Kontrolle des Strings
format(query,sizeof(query),"UPDATE Spieler SET Alter='%s' WHERE Name='%s'",Alter[playerid],Name);
mysql_query(dbhandle,query,false);
ShowPlayerDialog(playerid,DIALOG_REGISTER_GESCHLECHT,DIALOG_STYLE_LIST,"Gib jetzt noch dein Geschlecht an:","Männlich\nWeiblich","Auswählen","Abbrechen");
}
else
{
SendClientMessage(playerid,ROT,"Das Format deines Gebutsdatums ist falsch! Gib es so an: tt.mm.jjjj (Beispiel: 01.01.1993)");
ShowPlayerDialog(playerid,DIALOG_REGISTER_ALTER,DIALOG_STYLE_INPUT,"Registration","Gib nun dein Geburtsdatum an: (tt.mm.jjjj)","Weiter","Abbrechen");
}
}
else
{
SendClientMessage(playerid,ROT,"Du wurdest gekickt!");
Kick(playerid);
}
return 1;
}
Der Typ des Feldes in der MySQL Tabelle ist varchar und hat eine Größe von 128. Alle anderen Einstellungen sind die Standarteinstellungen. Das Feld ist nach der Registrierung aber noch immer leer.
Kann mir da einer helfen? Ich weiß echt nicht mehr weiter.
mfg