Hallo, ich habe ein Problem mit meiner MySQL-Tabelle. Und zwar, sieht die SQL-Tabelle so aus:
breadfish.de/wcf/attachment/2707/
Ich habe jetzt versucht, das ganze so auszulesen:
if(mysql_num_rows() > 0) {
new line[750];
if(mysql_fetch_row(line)) {
new Tempdata[5];
sscanf(line, "iisssssiss",PlayerInfo[playerid][userID],PlayerStatus[playerid][banned],PlayerStatus[playerid][bannedReason],Tempdata[1],Tempdata[2],Tempdata[3],PlayerInfo[playerid][email],Tempdata[4],PlayerInfo[playerid][last_login_ip],PlayerInfo[playerid][language]);
PlayerStatus[playerid][getAccount] = 1;
printf("========================================");
printf("Spieler %s wurde in der Datenbank gefunden !", plname);
printf("UserID: %s - DB-ID: %s - Language: %s", PlayerInfo[playerid][userID], Tempdata[0], PlayerInfo[playerid][language]);
printf("========================================");
mysql_free_result();
}
}
Leider funktioniert das nicht so, wie ich möchte und zwar, liest er die Daten nur nicht aus. Die MySQL-Row wird angenommen und existiert und auch.
Kann mir dabei jemand helfen?
MySQL-sscanf Problem
- HandsUpFreak
- Geschlossen
- Erledigt
-
-
Bau mal bitte nach Zeile 3 ein
printf("%s",line);
ein -
Hallo, da kommt ein Teil der E-Mail Adresse raus. Exakt die ersten 2 Buchstaben fehlen. Mittlerweile hab ich mal p| am Anfang hinzugefügt und alle i durch d ausgetauscht. Nun wird die ID richtig ausgelesen, bei der Sprache also "language" hapert es aber noch:
sscanf(line, "p|ddsssssdss",PlayerInfo[playerid][userID],PlayerStatus[playerid][banned],PlayerStatus[playerid][bannedReason],Tempdata[0],Tempdata[1],Tempdata[2],PlayerInfo[playerid][email],Tempdata[3],PlayerInfo[playerid][last_login_ip],PlayerInfo[playerid][language]);
Der Rest wird, soweit ich das sehen kann, ordentlich ausgelesen. -
Ist language denn ein String ?
-
Ja, natürlich.
-
Soviel ich weiss musst du bei sscanf noch angeben wie groß der jeweilige string (wie in der DB angegeben) ist
z.B.
sscanf(line, "p|dds[30]s[30]s[30]s[30]s[30]ds[30]s[30]",PlayerInfo[playerid][userID],PlayerStatus[playerid][banned],PlayerStatus[playerid][bannedReason],Tempdata[0],Tempdata[1],Tempdata[2],PlayerInfo[playerid][email],Tempdata[3],PlayerInfo[playerid][last_login_ip],PlayerInfo[playerid][language]); -
breadfish.de
Hat das Thema geschlossen.