![]() |
Textcounter mit IP Sperre (MySQL) - Druckversion +- net-board.net Archiv (https://net-board.net) +-- Forum: Deine eigene Homepage (https://net-board.net/forumdisplay.php?fid=26) +--- Forum: Scriptsprachen (+Datenbanksysteme) (https://net-board.net/forumdisplay.php?fid=19) +---- Forum: Tutorials und Artikel: Programmieren und Datenbanken (https://net-board.net/forumdisplay.php?fid=15) +---- Thema: Textcounter mit IP Sperre (MySQL) (/showthread.php?tid=5577) |
Textcounter mit IP Sperre (MySQL) - KingGO - 23.05.2007 Textcounter mit IP Sperre (MySQL) Ein Textcounter mit MySQL ist die schwierigste Form eines Counters aber immerhin noch die beste ![]() Ich habe den kompletten Sourcecode geschrieben und ausgiebig kommentiert. Ihr solltet über Grundlegende Kentnisse PHP und MySQL verfügen. Wir führen zunächst einen SQL-Befehl in phpMyAdmin oder ähnlichen aus. Code: CREATE TABLE `tutorial_counter` ( Kommen wir zum eigentlichen Script, hier müsst Ihr zunächst die MySQL-Verbindungsdaten eures Servers eintragen. [code=php]<?php ############################################# # Netccode Forum :: PHP/Tutorial. # # Textcounter mit IP Sperre (MySQL) # ############################################# # MySQL Host $db_host = ""; # MySQL Benutzer $db_user = ""; # MySQL Passwort $db_pass = ""; # MySQL Tabelle $db_data = ""; # Wir ermitteln die IP-Adresse des benutzers. $ip = $_SERVER[REMOTE_ADDR]; # Zeit wann Alte Daten gelöscht werden sollen $diff = time()-86400; // Ergibt aktuelle Zeit - 24 Std. # Verbindung zur Datenbank herstellen und Tabelle auswählen. $ver = mysql_connect("$db_host", "$db_user", "$db_pass"); mysql_select_db("$db_data"); # Zunächst werden alte MySQL Werte gelöscht die schon länger als 24 Std her sind. mysql_query("DELETE FROM `tutorial_counter_sperre` WHERE time < ".$diff.""); $result = mysql_query("SELECT * FROM `tutorial_counter_sperre` WHERE `ip`='".$ip."'"); if(mysql_num_rows($result)) { # IP-Adresse steht in Datebank. } else { # IP-Adresse steht noch nicht in Datenbank. mysql_query("INSERT INTO `tutorial_counter_sperre` SET time='".time()."',`ip`='".$ip."'"); mysql_query("UPDATE `tutorial_counter` SET wert = (wert + 1)"); } # Auslesen des aktuellen Counterstandes. $ausgabe = mysql_fetch_assoc(mysql_query("SELECT * FROM `tutorial_counter`")); # Aktuelle Counterstand wird ausgegeben echo $ausgabe["wert"]; # Wir schließen die MySQL-Verbindung wieder. mysql_close($ver); ?>[/code] Ich hoffe es hat euch wie immer spaß gemacht und Feedback ist wie immer erwünscht ;-) - pattex - 23.05.2007 Hui, eine Mücke mit nem Elefanten erschlagen *g* (http://netboard.sunsonic.de/wbboard/thread.php?threadid=5616) Nein Unsinn. Sieht gut aus. Vll könnte man eine Kombination aus Cookie und IP Sperre machen. Das könnte dann auch über einen längeren Zeitraum geschehen. Ich war mal in nem Chat (Flash) wo aber anders gesperrt wurde. Irgendwie der Computername oder die Mac Adresse. Jedenfalls ließ sich das nicht umgehen wenn man eben diesen Namen nicht geändert hat. Vll weiß da jemand etwas. - KingGO - 23.05.2007 mit flash kannste mehr auslesen da es aufn pc ausgeübt wird ![]() mit php ist das leider nicht möglich leider =) aber mal im ernst wer hat schon lust dauernd router stromlos zumachen ? ich mach irgendwann noch einen counter mit grafik... :daumen: |