Kannst du den Code auch dazu posten? Der Log ohne Code ist nicht so ganz aussagekräftig.
Login & Register schreibt nichts in die Datenbank!
- Grapefruit
- Geschlossen
- Erledigt
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
-
-
format(query, sizeof(query), "SELECT * FROM user WHERE Username = '%s' AND Password = MD5('%s')", Username(playerid), pass);
-
Ist das query groß genug? Das hast du ja nicht mit gepostet.
Und das Callback das nach dem query aufgerufen wird? -
So ich hab die Query von 256 auf 500 gestellt, klappt immer noch nicht. Und hier das Callback was aufgerufen wird.
new num_rows, num_fields;
cache_get_data(num_rows, num_fields, handle);
if(num_rows == 0)
{
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Login", "Ihr Account wurde erfolgreich in der Datenbank gefunden! Bitte logge dich in dein Account ein!", "Login", "Abbrechen");
}
else
{
PlayerInfo[playerid][pLogged] = 1;
LoadPlayer(playerid);
} -
Dann versuche es mit dem Plugin das ich dir verlinkt habe.
Oder versuche es so:
format(query, sizeof(query), "SELECT * FROM user WHERE Username = '%s' AND Password = 'MD5('%s')'", Username(playerid), pass);
Ich nutze das MD5 nicht, vielleicht kann jemand ein funktionierendes Beispiel posten. Ansonsten mach es mit dem Plugin, das geht auf jeden Fall. -
Hab das MD5 jetzt mit md5_hash ausgetauscht. Bekomme diesen Error
[23:13:18] [ERROR] CMySQLQuery::Execute[] - (error #1305) FUNCTION samp.MD5_Hash does not existWenn ich es beim Inputtext mache, klappt es immer noch nicht. Es kommt auch kein Error.
-
Nein, das sollst du nicht in das Query schreiben, das macht ja keinen Sinn. Hast du dir das Beispiel in dem Thread nicht angeschaut?
Poste mal den Code wie du ihn hast und er dir Errors gibt (den Error bitte auch dazu). -
format(pass, sizeof(pass), "%s", MD5_Hash(inputtext));
mysql_escape_string(Username(playerid), Username(playerid));
mysql_escape_string(pass, pass);
format(query, sizeof(query), "INSERT INTO user (Username, Password) VALUES ('%s', '%s')", Username(playerid), pass);
mysql_pquery(handle, query); -
Dann versuche es mit dem Plugin das ich dir verlinkt habe.
Oder versuche es so:
format(query, sizeof(query), "SELECT * FROM user WHERE Username = '%s' AND Password = 'MD5('%s')'", Username(playerid), pass);
Ich nutze das MD5 nicht, vielleicht kann jemand ein funktionierendes Beispiel posten. Ansonsten mach es mit dem Plugin, das geht auf jeden Fall.Wenn du Funktionen maskierst werden diese nicht ausgeführt
-
So hatte er es ja bereits, und es ging nicht.
Grapefruit:
Sieht doch gut aus soweit. Wie sieht der Login Code aus? Wenn du den jetzt nach dem gleichen Prinzip machst dann sollte es ohne Probleme gehen. -
breadfish.de
Hat das Thema geschlossen.