Anleitung:
Datei content/intern/anmelden.php
PHP-Code:
db_query("INSERT INTO ".$db_prefix."_kontodaten (uid,passwort,status,hinweis,kontostand) VALUES ('','".md5($_POST['passwort_1'])."','0','','0')");
ersetzen mit:
PHP-Code:
db_query("INSERT INTO ".$db_prefix."_kontodaten (uid,passwort,status,hinweis,kontostand,login_ip) VALUES ('','".md5($_POST['passwort_1'])."','0','','0','".$ip."')");
jetzt wird schon beim anmelden die ip in der datenbank gespeichert.
suche:
PHP-Code:
if ($_POST['anmelden'] == "Jetzt anmelden!") {
füge direkt danach ein:
PHP-Code:
$ipcheck = db_query('SELECT login_ip FROM '.$db_prefix.'_kontodaten WHERE login_ip = "'.$ip.'" ');
if(mysql_num_rows($ipcheck)!=0){
$error.='Nur ein Account pro Person/IP. Sollte das ein Fehler sein, wenden Sie sich an den Administrator.<br>';
}
nun sollte sich keienr mehr direkt 2x hintereinander anmelden können, es kann natürlich passieren, dass ein user diese meldung mal unberechtigter weise angezeigt bekommt (wobei die wahrscheinlichkeit sehr gering ist), aber in dem falle sollte man halt ein kontaktformular oder email adresse angeben, damit der user manuell eingetragen werden kann bzw. die betreffende ip aus der db gelöscht.
Bisher nur im vms 1.2 mit klammanbindung getestet, sollte aber normalerweise auch in dem ohne klammanbindung funzen.