Problem phpBB 2.0.19 und Frage zu Protect User Account MOD
Forumsregeln
Auch wenn hier der Support für phpBB 2 weiterhin aufrecht erhalten bleibt, weisen wir darauf hin, dass das phpBB 2 nicht mehr offiziell unterstützt und weiterentwickelt wird!
Auch wenn hier der Support für phpBB 2 weiterhin aufrecht erhalten bleibt, weisen wir darauf hin, dass das phpBB 2 nicht mehr offiziell unterstützt und weiterentwickelt wird!
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Nein, dieser Befehl setzt es bei allen Usern, deren Passwort-Feld (PUA-MOD) falsch ist! Und das muss dann ja auch sein!
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-
SkYfiGhTeR
- Beiträge: 153
- Registriert: Do 28.Okt, 2004 09:01
Hi,
ja schon...aber was is mit dem Birthday MOD?
Ich habe die Dateien ja bereits ersetzt und das mit der Passwortabfrage passt ja nun auch beim LogIn soweit. Nur mit den Geburtsagen passt es nicht. Die Dateien sind ersetzt und wenn sich nun aber ein neues Mitglied registriert und keinen Geburtstag angibt, steht's trotzdem direkt auf 0 bzw. auf 01.01.1970 und das sollte ja nicht sein oder? Da müsste ich den Befehl ja jedes Mal nachdem sich ein Benutzer neu angemeldet hat und kein Geburtstag angegeben hat ausführen, um den Wert geändert zu bekommen ?!
ja schon...aber was is mit dem Birthday MOD?
Ich habe die Dateien ja bereits ersetzt und das mit der Passwortabfrage passt ja nun auch beim LogIn soweit. Nur mit den Geburtsagen passt es nicht. Die Dateien sind ersetzt und wenn sich nun aber ein neues Mitglied registriert und keinen Geburtstag angibt, steht's trotzdem direkt auf 0 bzw. auf 01.01.1970 und das sollte ja nicht sein oder? Da müsste ich den Befehl ja jedes Mal nachdem sich ein Benutzer neu angemeldet hat und kein Geburtstag angegeben hat ausführen, um den Wert geändert zu bekommen ?!
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Der Wert sollte doch eigentlich auf 999999 gesetzt werden...
Öh, dann such mal die UPDATE - Anweisung in der usercp_register.php für die USERS_TABLE und füge direkt davor ein:
Code: Alles auswählen
$birthday = ($birthday == 0) ? '999999' : $birthday;Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-
SkYfiGhTeR
- Beiträge: 153
- Registriert: Do 28.Okt, 2004 09:01
Hi,
jaa...der Wert sollte und wird ja auch auf 999999 gesetzt, aber doch nur für bereits registrierte User!
Wenn ich den Befehl ausgeführt habe und sich anschließend - nach Ausführung des Befehls - ein neuer Benutzer registriert und keinen Geburtstag angibt, dann hat er jedoch wieder den 01.01.1970, da der ja dann zu Ausführung des Befehls noch gar nich existiert hat oder versteh' ich da jetzt was falsch? *g*
jaa...der Wert sollte und wird ja auch auf 999999 gesetzt, aber doch nur für bereits registrierte User!
Wenn ich den Befehl ausgeführt habe und sich anschließend - nach Ausführung des Befehls - ein neuer Benutzer registriert und keinen Geburtstag angibt, dann hat er jedoch wieder den 01.01.1970, da der ja dann zu Ausführung des Befehls noch gar nich existiert hat oder versteh' ich da jetzt was falsch? *g*
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Nochmal langsam:
Der SQL-Befehl korrigiert alle falsch hinterlegten Geburtstagseinträge.
Also aller bis dahin registrierten User.
Die Änderung an der usercp_register.php würde dazu zusätzlich verhindern, das zukünftige Registerungen oder Profiländerungen einen falschen Geburtstag speichern.
Der SQL-Befehl korrigiert alle falsch hinterlegten Geburtstagseinträge.
Also aller bis dahin registrierten User.
Die Änderung an der usercp_register.php würde dazu zusätzlich verhindern, das zukünftige Registerungen oder Profiländerungen einen falschen Geburtstag speichern.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-
SkYfiGhTeR
- Beiträge: 153
- Registriert: Do 28.Okt, 2004 09:01
Gaaanz genau - soweit sogut.
Ich würde nur gerne wissen, wieso ich diese Code-Änderung an der usercp_register.php überhaupt vornehmen muss, um das fehlerfrei hinzubekommen, es hat in anderen Foren bzw. unter anderem auch in meinem anderen Forum dieses Problem nicht gegeben...das möchte ich halt nur irgendwie verstehen, weil dann dürfte ja irgendwie was anderes noch nicht so wirklich stimmen oder?
Ich würde nur gerne wissen, wieso ich diese Code-Änderung an der usercp_register.php überhaupt vornehmen muss, um das fehlerfrei hinzubekommen, es hat in anderen Foren bzw. unter anderem auch in meinem anderen Forum dieses Problem nicht gegeben...das möchte ich halt nur irgendwie verstehen, weil dann dürfte ja irgendwie was anderes noch nicht so wirklich stimmen oder?
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Die kannst Du bedenkenlos durchführen.
Es sollte allerdings jetzt schon der korrekte Wert geschrieben werden.
Probiers doch einfach mal aus
Es sollte allerdings jetzt schon der korrekte Wert geschrieben werden.
Probiers doch einfach mal aus
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-
SkYfiGhTeR
- Beiträge: 153
- Registriert: Do 28.Okt, 2004 09:01
Hi,
hm...hab's mal eingefügt und die Stelle schaut nun so aus:
Habe neuen Benutzer registriert und was steht im Profil? Genau => "Geburtstag: 01.01.1970".
Kann doch irgendwie nicht sein...irgendwas stimmt da noch nicht..da ist irgendwie was faul und ich finds/sehs net. *grummel*
hm...hab's mal eingefügt und die Stelle schaut nun so aus:
Code: Alles auswählen
$birthday = ($birthday == 0) ? '999999' : $birthday;
$sql = "UPDATE " . USERS_TABLE . "
SET " . $username_sql . $passwd_sql . "user_email = '" . str_replace("\'", "''", $email) ."', user_icq = '" . str_replace("\'", "''", $icq) . "', user_website = '" . str_replace("\'", "''", $website) . "', user_occ = '" . str_replace("\'", "''", $occupation) . "', user_from = '" . str_replace("\'", "''", $location) . "', user_interests = '" . str_replace("\'", "''", $interests) . "', user_birthday = '$birthday', user_next_birthday_greeting = '$next_birthday_greeting', user_sig = '" . str_replace("\'", "''", $signature) . "', user_sig_bbcode_uid = '$signature_bbcode_uid', user_viewemail = $viewemail, user_aim = '" . str_replace("\'", "''", str_replace(' ', '+', $aim)) . "', user_yim = '" . str_replace("\'", "''", $yim) . "', user_msnm = '" . str_replace("\'", "''", $msn) . "', user_attachsig = $attachsig, user_allowsmile = $allowsmilies, user_allowhtml = $allowhtml, user_allowbbcode = $allowbbcode, user_allow_viewonline = $allowviewonline, user_notify = $notifyreply, user_notify_pm = $notifypm, user_popup_pm = $popup_pm, user_timezone = $user_timezone, user_dateformat = '" . str_replace("\'", "''", $user_dateformat) . "', user_lang = '" . str_replace("\'", "''", $user_lang) . "', user_style = $user_style, user_active = $user_active, user_actkey = '" . str_replace("\'", "''", $user_actkey) . "'" . $avatar_sql . "
WHERE user_id = $user_id";
Habe neuen Benutzer registriert und was steht im Profil? Genau => "Geburtstag: 01.01.1970".
Kann doch irgendwie nicht sein...irgendwas stimmt da noch nicht..da ist irgendwie was faul und ich finds/sehs net. *grummel*
Die Codestelle betrifft nur die Profilbearbeitung.
Bei der Registrierung wir die hier verwendet (Achtung, ich habe stark gekürzt):
Bei der Registrierung wir die hier verwendet (Achtung, ich habe stark gekürzt):
Code: Alles auswählen
$sql = "INSERT INTO " . USERS_TABLE . " (user_id, username, user_regdate, user_password, .....
VALUES ($user_id, '" . str_replace("\'", "''", $username) . "', " . time() . ", '" . str_replace("\'", "''", $new_password) . "', .....[center].: Web Relax .::. Essen mit Freude .::. AmigaLink.de :.
______________________________________
Kein Support per PM, ICQ oder eMail!!![/center]
______________________________________
Kein Support per PM, ICQ oder eMail!!![/center]
-
SkYfiGhTeR
- Beiträge: 153
- Registriert: Do 28.Okt, 2004 09:01
Hi,
achso...gut, dann schauts jetzt da so aus:
Und es verändert sich weiterhin nichts...nach neuer Registrierung ohne Angabe des Geburtstags steht im Profil trotzdem "Geburtstag: 01.01.1970".
Hmpf..
achso...gut, dann schauts jetzt da so aus:
Code: Alles auswählen
$birthday = ($birthday == 0) ? '999999' : $birthday;
//
// Get current date
//
$sql = "INSERT INTO " . USERS_TABLE . " (user_id, username, user_regdate, user_password, user_email, user_icq, user_website, user_occ, user_from, user_interests, user_sig, user_sig_bbcode_uid, user_avatar, user_avatar_type, user_viewemail, user_aim, user_yim, user_msnm, user_attachsig, user_allowsmile, user_allowhtml, user_allowbbcode, user_allow_viewonline, user_notify, user_notify_pm, user_popup_pm, user_timezone, user_dateformat, user_lang, user_style, user_level, user_allow_pm, user_passwd_change, user_birthday, user_next_birthday_greeting, user_active, user_actkey)
VALUES ($user_id, '" . str_replace("\'", "''", $username) . "', " . time() . ", '" . str_replace("\'", "''", $new_password) . "', '" . str_replace("\'", "''", $email) . "', '" . str_replace("\'", "''", $icq) . "', '" . str_replace("\'", "''", $website) . "', '" . str_replace("\'", "''", $occupation) . "', '" . str_replace("\'", "''", $location) . "', '" . str_replace("\'", "''", $interests) . "', '" . str_replace("\'", "''", $signature) . "', '$signature_bbcode_uid', $avatar_sql, $viewemail, '" . str_replace("\'", "''", str_replace(' ', '+', $aim)) . "', '" . str_replace("\'", "''", $yim) . "', '" . str_replace("\'", "''", $msn) . "', $attachsig, $allowsmilies, $allowhtml, $allowbbcode, $allowviewonline, $notifyreply, $notifypm, $popup_pm, $user_timezone, '" . str_replace("\'", "''", $user_dateformat) . "', '" . str_replace("\'", "''", $user_lang) . "', $user_style, 0, 1, '$birthday', '$next_birthday_greeting', ".time().",";
Hmpf..
-
SkYfiGhTeR
- Beiträge: 153
- Registriert: Do 28.Okt, 2004 09:01
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Dann tausch mal die beiden Zeilen gegen
Code: Alles auswählen
# $birthday = ($birthday == 0 || $birthday == '') ? '999999' : $birthday;Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-
SkYfiGhTeR
- Beiträge: 153
- Registriert: Do 28.Okt, 2004 09:01
beide Zeilen?! *g*
Ich habe jetzt die eine Zeile (s. vier Postings über diesem) getauscht gegen die von dir eben gepostete und einen neuen Benutzer registriert und dann im Profil nachgeschaut und es ist weiterhin zu sehen: "Geburtstag: 01.01.1970"
Hm...also langsam weiß ich ja echt nicht mehr, was da schief gelaufen ist..bzw. schief läuft..
Ich habe jetzt die eine Zeile (s. vier Postings über diesem) getauscht gegen die von dir eben gepostete und einen neuen Benutzer registriert und dann im Profil nachgeschaut und es ist weiterhin zu sehen: "Geburtstag: 01.01.1970"
Hm...also langsam weiß ich ja echt nicht mehr, was da schief gelaufen ist..bzw. schief läuft..
Code: Alles auswählen
$sql = "INSERT INTO " . USERS_TABLE . " (user_id, username, user_regdate, user_password, user_email, user_icq, user_website, user_occ, user_from, user_interests, user_sig, user_sig_bbcode_uid, user_avatar, user_avatar_type, user_viewemail, user_aim, user_yim, user_msnm, user_attachsig, user_allowsmile, user_allowhtml, user_allowbbcode, user_allow_viewonline, user_notify, user_notify_pm, user_popup_pm, user_timezone, user_dateformat, user_lang, user_style, user_level, user_allow_pm, user_passwd_change, user_birthday, user_next_birthday_greeting, user_active, user_actkey)
VALUES ($user_id, '" . str_replace("\'", "''", $username) . "', " . time() . ", '" . str_replace("\'", "''", $new_password) . "', '" . str_replace("\'", "''", $email) . "', '" . str_replace("\'", "''", $icq) . "', '" . str_replace("\'", "''", $website) . "', '" . str_replace("\'", "''", $occupation) . "', '" . str_replace("\'", "''", $location) . "', '" . str_replace("\'", "''", $interests) . "', '" . str_replace("\'", "''", $signature) . "', '$signature_bbcode_uid', $avatar_sql, $viewemail, '" . str_replace("\'", "''", str_replace(' ', '+', $aim)) . "', '" . str_replace("\'", "''", $yim) . "', '" . str_replace("\'", "''", $msn) . "', $attachsig, $allowsmilies, $allowhtml, $allowbbcode, $allowviewonline, $notifyreply, $notifypm, $popup_pm, $user_timezone, '" . str_replace("\'", "''", $user_dateformat) . "', '" . str_replace("\'", "''", $user_lang) . "', $user_style, 0, 1, '$birthday', '$next_birthday_greeting', ".time().",";Zwischen $user_style und $birthday müssten 3 Werte sein und das , ".time()." am ende hat da auch nichts zu suchen.
[center].: Web Relax .::. Essen mit Freude .::. AmigaLink.de :.
______________________________________
Kein Support per PM, ICQ oder eMail!!![/center]
______________________________________
Kein Support per PM, ICQ oder eMail!!![/center]
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
AH!
Dann gehört das so rum:
Also time() nicht an den Anfang sondern vor $birthday.
Man, da hab ich aber mal wieder geschlafen...
Dann gehört das so rum:
Code: Alles auswählen
$sql = "INSERT INTO " . USERS_TABLE . " (user_id, username, user_regdate, user_password, user_email, user_icq, user_website, user_occ, user_from, user_interests, user_sig, user_sig_bbcode_uid, user_avatar, user_avatar_type, user_viewemail, user_aim, user_yim, user_msnm, user_attachsig, user_allowsmile, user_allowhtml, user_allowbbcode, user_allow_viewonline, user_notify, user_notify_pm, user_popup_pm, user_timezone, user_dateformat, user_lang, user_style, user_level, user_allow_pm, user_passwd_change, user_birthday, user_next_birthday_greeting, user_active, user_actkey)
VALUES ($user_id, '" . str_replace("\'", "''", $username) . "', " . time() . ", '" . str_replace("\'", "''", $new_password) . "', '" . str_replace("\'", "''", $email) . "', '" . str_replace("\'", "''", $icq) . "', '" . str_replace("\'", "''", $website) . "', '" . str_replace("\'", "''", $occupation) . "', '" . str_replace("\'", "''", $location) . "', '" . str_replace("\'", "''", $interests) . "', '" . str_replace("\'", "''", $signature) . "', '$signature_bbcode_uid', $avatar_sql, $viewemail, '" . str_replace("\'", "''", str_replace(' ', '+', $aim)) . "', '" . str_replace("\'", "''", $yim) . "', '" . str_replace("\'", "''", $msn) . "', $attachsig, $allowsmilies, $allowhtml, $allowbbcode, $allowviewonline, $notifyreply, $notifypm, $popup_pm, $user_timezone, '" . str_replace("\'", "''", $user_dateformat) . "', '" . str_replace("\'", "''", $user_lang) . "', $user_style, 0, 1, ".time().", '$birthday', '$next_birthday_greeting', ";Man, da hab ich aber mal wieder geschlafen...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-
SkYfiGhTeR
- Beiträge: 153
- Registriert: Do 28.Okt, 2004 09:01
Hi,
na das kann man ja nach den Anweisungen einmal vom PUA MOD:
und der vom Birthday MOD:
nicht wissen.
Es geht jetzt übrigens alles einwandfrei!!! Das mit dem Geburtstagsdatum ist korrekt, es steht nun "keiner angegeben", wenn man keinen angibt und man kann sich direkt nach einer Registrierung auch normal mit dem gewählten Passwort einloggen.
Und das übrigens auch ohne die geänderte login.php und page_header.php!
Ich habe jetzt nur noch ein Problem, das eigentlich auch kein wirkliches Problem ist, aber in meinem anderen Forum sieht die Stelle in der usercp_register.php so aus:
Aber es funktioniert alles...wie kann das möglich sein
?
na das kann man ja nach den Anweisungen einmal vom PUA MOD:
Code: Alles auswählen
#-----[ FIND ]------------------------------------------------
#
VALUES (
#
#-----[ IN-LINE FIND ]----------------------------------------
#
;
#
#-----[ IN-LINE BEFORE, ADD ]---------------------------------
#
.time().","
#
Code: Alles auswählen
#-----[ FIND ]------------------------------------------------
#
VALUES ($user_id,
#
#-----[ IN-LINE FIND ]----------------------------------------
#
, ";
#
#-----[ IN-LINE BEFORE, ADD ]---------------------------------
#
, '$birthday', '$next_birthday_greeting'
#
Es geht jetzt übrigens alles einwandfrei!!! Das mit dem Geburtstagsdatum ist korrekt, es steht nun "keiner angegeben", wenn man keinen angibt und man kann sich direkt nach einer Registrierung auch normal mit dem gewählten Passwort einloggen.
Und das übrigens auch ohne die geänderte login.php und page_header.php!
Ich habe jetzt nur noch ein Problem, das eigentlich auch kein wirkliches Problem ist, aber in meinem anderen Forum sieht die Stelle in der usercp_register.php so aus:
Code: Alles auswählen
$sql = "INSERT INTO " . USERS_TABLE . " (user_id, username, user_regdate, user_password, user_email, user_icq, user_website, user_occ, user_from, user_interests, user_sig, user_sig_bbcode_uid, user_avatar, user_avatar_type, user_viewemail, user_aim, user_yim, user_msnm, user_attachsig, user_allowsmile, user_allowhtml, user_allowbbcode, user_allow_viewonline, user_notify, user_notify_pm, user_allow_mass_pm, user_popup_pm, user_timezone, user_dateformat, user_lang, user_style, user_level, user_allow_pm, user_birthday, user_next_birthday_greeting, user_passwd_change, user_active, user_actkey)
VALUES ($user_id, '" . str_replace("\'", "''", $username) . "', " . time() . ", '" . str_replace("\'", "''", $new_password) . "', '" . str_replace("\'", "''", $email) . "', '" . str_replace("\'", "''", $icq) . "', '" . str_replace("\'", "''", $website) . "', '" . str_replace("\'", "''", $occupation) . "', '" . str_replace("\'", "''", $location) . "', '" . str_replace("\'", "''", $interests) . "', '" . str_replace("\'", "''", $signature) . "', '$signature_bbcode_uid', $avatar_sql, $viewemail, '" . str_replace("\'", "''", str_replace(' ', '+', $aim)) . "', '" . str_replace("\'", "''", $yim) . "', '" . str_replace("\'", "''", $msn) . "', $attachsig, $allowsmilies, $allowhtml, $allowbbcode, $allowviewonline, $notifyreply, $notifypm, $allow_mass_pm, $popup_pm, $user_timezone, '" . str_replace("\'", "''", $user_dateformat) . "', '" . str_replace("\'", "''", $user_lang) . "', $user_style, 0, 1, '$birthday', '$next_birthday_greeting', ".time().",";
Aber es funktioniert alles...wie kann das möglich sein
-
SkYfiGhTeR
- Beiträge: 153
- Registriert: Do 28.Okt, 2004 09:01
-
SkYfiGhTeR
- Beiträge: 153
- Registriert: Do 28.Okt, 2004 09:01
Hi,
mhm genau. Und das kann von Forum zu Forum irgendwie unterschiedlich sein, in welcher Reihenfolge die angesprochen werden müssen?
Und außerdem hieß es ja:
mhm genau. Und das kann von Forum zu Forum irgendwie unterschiedlich sein, in welcher Reihenfolge die angesprochen werden müssen?
Und außerdem hieß es ja:
Das wäre in meinem anderen Forum ja dann nicht bzw. auch nicht der Fall...ich habe dort aber auch noch ein paar andere MODs eingebaut als bei dem, um das es jetzt geht...aber ob das darauf Einfluss hat? Denn die Stelle in der usercp_register.php sind genau so aus, wie ich sie gepostet habe..Zwischen $user_style und $birthday müssten 3 Werte sein und das , ".time()." am ende hat da auch nichts zu suchen.
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Jein. Die Reihenfolge der Werte muss mit den Feldnamen übereinstimmen!
Ein INSERT INTO-Befehl ist ja folgendermaßen aufgebaut:
Daran solltest Du schon erkennen, warum die Reihenfolge dann unterschiedlich sein kann:
Nur wenn die Feldnamen in einer anderen Reihenfolge angegeben wurden, sind auch die Werte in einer entsprechend anderen Reihenfolge. Und das immer paarig zueinander!
Bei Deinem Forum war hier ein Fehler in der Reihenfolge und Zugehörigkeit drinnen, in dem anderen Forum passt es aber so schon.
Die Datenbank liest nämlich bei einem INSERT INTO den Feldnamen, schreibt den Wert dazu und geht zum nächsten Feld. Da muss dann die Reihenfolge eben zwischen Feldern und Werten stimmen.
Anders bei einem UPDATE: Hier wird ja direkt gesagt, welches Feld welchen Wert bekommen soll:
Dann ist auch die Reihenfolge völlig egal.
Du musst halt beim Installieren eines MODs aufpassen, wenn ein INSERT INTO Befehl geändert wird, daß die Feldnamen und Werte jeweils an der gleichen Stelle eingefügt werden, bzw. in der selben Reihenfolge zueinander stehen. Sonst schreibt der Befehl eben die falschen Werte in die Felder und das führt dann zu fehlerhaften Anzeigen, im schlimmsten Fall sogar zu falschen Berechtigungen!
Ein INSERT INTO-Befehl ist ja folgendermaßen aufgebaut:
Code: Alles auswählen
INSERT INTO tabellenname (feld1, feld2, feldn) VALUE ($wert1, $wert2, $wertn);Nur wenn die Feldnamen in einer anderen Reihenfolge angegeben wurden, sind auch die Werte in einer entsprechend anderen Reihenfolge. Und das immer paarig zueinander!
Bei Deinem Forum war hier ein Fehler in der Reihenfolge und Zugehörigkeit drinnen, in dem anderen Forum passt es aber so schon.
Die Datenbank liest nämlich bei einem INSERT INTO den Feldnamen, schreibt den Wert dazu und geht zum nächsten Feld. Da muss dann die Reihenfolge eben zwischen Feldern und Werten stimmen.
Anders bei einem UPDATE: Hier wird ja direkt gesagt, welches Feld welchen Wert bekommen soll:
Code: Alles auswählen
UPDATE tabellenname SET feld1 = $wert1, feldn = $wertn, feld3 = $wert3;Du musst halt beim Installieren eines MODs aufpassen, wenn ein INSERT INTO Befehl geändert wird, daß die Feldnamen und Werte jeweils an der gleichen Stelle eingefügt werden, bzw. in der selben Reihenfolge zueinander stehen. Sonst schreibt der Befehl eben die falschen Werte in die Felder und das führt dann zu fehlerhaften Anzeigen, im schlimmsten Fall sogar zu falschen Berechtigungen!
Zuletzt geändert von oxpus am Fr 06.Jan, 2006 14:03, insgesamt 1-mal geändert.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-
SkYfiGhTeR
- Beiträge: 153
- Registriert: Do 28.Okt, 2004 09:01
Hi,
mh...achso ja leuchtet ein. Ich habe gerade mal die beiden User-Tabellen verglichen und da ist es wirklich etwas unterschiedlich.
In der Datenbank von diesem Forum hier kommen hinter dem Eintrag "user_next_birthday_greeting" noch drei andere Einträge und danach kommt "user_passwd_change".
Bei meinem anderen Forum kommen hinter dem Eintrag "user_next_birthday_greeting" noch sieben weitere Einträge, bis dann "user_passwd_change" kommt.
Dann hat das wohl damit etwas zu tun oder?
- - -
Ach ja, und ich habe jetzt derzeit mal deine Änderung an der login.php und page_header.php nicht drin und es ganz original wie es ist eingebaut, also den PUA MOD.
Dann habe ich mal getestet und je nach dem, ob entweder phpBB an sich oder der PUA MOD eben weniger Fehl-LogIns zulassen, greift die entsprechende Funktion.
Wenn ich also beim PUA 3 Fehllogins einstelle und bei phpBB 5, dann ist natürlich nach drei Stück Schluss und der Benutzer wird für bei beim PUA angegebene Zeit gesperrt. Wenns bei phpBB weniger Versuche sind für den LogIn als beim PUA, dann greifen die Einstellungen, die man dort gemacht hat.
Was ich jetzt noch nicht probiert habe ist, wenn ich sowohl bei phpBB als auch beim PUA MOD die gleiche Anzahl an Fehl-LogIns einstelle und auch die gleiche oder von mir aus auch eine unterschiedliche Sperrzeit. Welche Funktion wird denn dann angesprochen? Die von phpBB oder die des PUA MOD?
mh...achso ja leuchtet ein. Ich habe gerade mal die beiden User-Tabellen verglichen und da ist es wirklich etwas unterschiedlich.
In der Datenbank von diesem Forum hier kommen hinter dem Eintrag "user_next_birthday_greeting" noch drei andere Einträge und danach kommt "user_passwd_change".
Bei meinem anderen Forum kommen hinter dem Eintrag "user_next_birthday_greeting" noch sieben weitere Einträge, bis dann "user_passwd_change" kommt.
Dann hat das wohl damit etwas zu tun oder?
- - -
Ach ja, und ich habe jetzt derzeit mal deine Änderung an der login.php und page_header.php nicht drin und es ganz original wie es ist eingebaut, also den PUA MOD.
Dann habe ich mal getestet und je nach dem, ob entweder phpBB an sich oder der PUA MOD eben weniger Fehl-LogIns zulassen, greift die entsprechende Funktion.
Wenn ich also beim PUA 3 Fehllogins einstelle und bei phpBB 5, dann ist natürlich nach drei Stück Schluss und der Benutzer wird für bei beim PUA angegebene Zeit gesperrt. Wenns bei phpBB weniger Versuche sind für den LogIn als beim PUA, dann greifen die Einstellungen, die man dort gemacht hat.
Was ich jetzt noch nicht probiert habe ist, wenn ich sowohl bei phpBB als auch beim PUA MOD die gleiche Anzahl an Fehl-LogIns einstelle und auch die gleiche oder von mir aus auch eine unterschiedliche Sperrzeit. Welche Funktion wird denn dann angesprochen? Die von phpBB oder die des PUA MOD?
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Beide speichern in unterschiedlichen Feldern und werden unabhängig voneinander geprüft.
Somit sollte logischerweise der User solange gesperrt bleiben, wie es die längere Zeit beider Funktionen hergibt...
Somit sollte logischerweise der User solange gesperrt bleiben, wie es die längere Zeit beider Funktionen hergibt...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!