User blockenForum » Webzone » Allgemeines » User blocken
-
30.03.2013 um 11:30 Uhr
Hallo
Ich wusste nicht genau, wohin ich das setzen soll ...
Ich bekomme seit einer Woche dauernd Spams von einem "DyncImmucky" in mein Gstebuch! Gestern 6x denselben Eintrag, heute 3x denselben! Die immer zu lschen, geht einem irgendwann schon auf die Nerven! Kann man den irgendwie aus dem Gstebuch blocken, dass er dort nicht mehr posten kann?
Freue mich ber baldige Antwort!
Liebe Gre
Neo
-
31.03.2013 um 12:18 Uhr
Habe mich mal ein Bisschen erkundigt. Die IP zu blocken bringt nichts, weil sich die IP beim neuen Einwhlen immer wieder ndert.
Eigentlich kann man es nur schwieriger machen. Eine Reload-Sperre wre vielleicht hilfreich. So eine, wie ich sie auch fr meinen Counter verwende! Kann hier in dem Fall auch mit Session gearbeitet werden?
Ein Captcha ist im Gstebuch ja schon vorhanden. Also ein Mensch mit zu viel Freizeit! Jedenfalls funktionieren die Adressen nicht einmal^^ Irgendwann war ich so genervt, dass ich es ausprobiert habe, weil ich dem mal schreiben wollte. Ging natrlich nicht ..
-
02.04.2013 um 08:48 Uhr
Hallo Neo,
mhhh, das is natuerlich doch. Mit einer Reload-Sperre wirst du da aller Wahrscheinlichkeit auch nicht viel weiter kommen,
das hat zumindest bei mir rein gar nix geholfen gehabt. IP blocken ist Schwachsinn, wie du schon schoen erkannt hast.
Bei einem Gaestebuch empfiehlt es sich das GB zu moderieren. Nach einiger Zeit hoert der Spass von alleine auf, wenn die Eintraege nicht veroeffentlicht werden, bzw. die Haeufigkeit von Spameintraegen nimmt zumindest deutlich ab, mit der Zeit.
Du koenntest das ReCaptcha von Google einsetzten, das erschwert es zumindest.
Aber selbst das hilft wirklich auch nur bedingt =(
Liebe Gruesse
Alice... { signatur } ... -
02.04.2013 um 11:22 Uhr
Hallo Alice!
Das GB zu moderieren: Du meinst, dass die Eintrge nicht sofort angezeigt werden, man die Eintrge als Admin zuerst freischalten muss? Das ist keine schlechte Idee! Wie wrde ich sowas denn einbauen?
LG Neo
Edit: Gestern und heute ist es ein und dieselbe IP ..
Der Beitrag wurde insgesamt 1 mal editiert, zuletzt 02.04.2013 um 11:30 Uhr ... -
13.06.2013 um 15:02 Uhr
Hallo
Ich habe mal im Netz nach einer Freischaltfunktion fr die GB-Administration gesucht, aber leider nichts gefunden. Hat jemand einen hilfreichen Link fr mich oder gibt es da etwas, dass man leicht ins GB-Skript einbauen kann?
Wrde mich sehr freuen!
Liebe Gre
Neo
-
21.06.2013 um 22:34 Uhr
Hallo neomii,
um welches Gstebuch Script handelt es sich? Also wie ist der Name davon?
Solange man das nicht wei, ists relativ schwer dir da spezifische Hilfe zu geben
LG
-
21.06.2013 um 22:57 Uhr
Ist das Script aus dem Tutorial, das du hier auf der Seite finden kannst
-
21.06.2013 um 23:20 Uhr
Ah okay!
Folgende Mglichkeiten gibt es (inkl. bereits genannter):
- Zeitsperre von 60 Sekunden fr neue Beitrge (gelst mittels Cookie oder Session bzw. beidem)
- IP Sperre
- Link Sperre (sobald http:// oder www. im Inhalt steht, wird der ganze Inhalt blockiert)
- Beitrge manuell freischalten (Statusspalte in der Datenbank hinzufgen und dort dann beim Eintragen den Status auf 0 setzen und dann mittels Statusnderung auf 1 die Beitrge freischalten)
- Recaptcha oder eine andere Captcha Lsung einbauen
- einen Honeypot/Bottrap einbauen, damit die Bots nur eine Fehlerseite zu sehen bekommen
Mehr fllt mir jetzt grad nicht ein, ist auch schon spt.
Such dir einfach was davon aus und ich schau mal, was ich machen kann.
LG
-
22.06.2013 um 00:18 Uhr
Ich wrde die Beitrge gern manuell freischalten
Danke fr deine Hilfe!
-
22.06.2013 um 11:55 Uhr
So, waren nur ein paar kleine nderungen.
Da ich nicht genau wusste, ob du die Dateien vom Tutorial oder die genderten Dateien von Alice genommen hast, hab ich einfach die von Alice erweitert.
Und los gehts...
ffne die Datei gb.php.
Such nach folgender Codezeile (ca. Zeile 80):
$eintragen = mysql_query ("INSERT INTO gb (id, name, email, hp, msg, ip, date, time) VALUES ('', '$name', '$email', '$hp', '$msg', '$ip', '$datum', '$zeit')");
Ersetze die Zeile durch folgenden Code (status wurde hinzugefgt mit Autowert 0):
$eintragen = mysql_query ("INSERT INTO gb (id, name, email, hp, msg, ip, date, time, status) VALUES ('', '$name', '$email', '$hp', '$msg', '$ip', '$datum', '$zeit', 0)");
Such nach folgender Codezeile (ca. Zeile 140):
$abfrage = mysql_query("SELECT id FROM gb"); // DB Abfrage -> Anzahl aller Eintraege feststellen
Ersetze die Zeile durch folgenden Code (status Abfrage wurde hinzugefgt):
$abfrage = mysql_query("SELECT id FROM gb WHERE `status` = 1"); // DB Abfrage -> Anzahl aller Eintraege feststellen
Such nach folgender Codezeile (ca. Zeile 218):
$result = mysql_query("SELECT id, name, hp, msg, date, time, kommentar FROM gb ORDER BY id DESC LIMIT $start,$datensaetze_pro_seite");
Ersetze die Zeile durch folgenden Code (status Abfrage wurde hinzugefgt):
$result = mysql_query("SELECT id, name, hp, msg, date, time, kommentar FROM gb WHERE `status` = 1 ORDER BY id DESC LIMIT $start,$datensaetze_pro_seite");
gb.php abspeichern.
Jetzt ffnest du die Datei admin.php.
Such nach folgender Codezeile (ca. Zeile 78):
if ($action == "delete" && $rang == 1) { $loeschen = mysql_query ("DELETE FROM gb WHERE id='$id'"); echo "<p>Eintrag erfolgreich geloescht ...</p>"; }
DANACH fgst du folgenden Codeblock ein (Aktionen activate und deactivate):
elseif($action == "activate" && $rang == 1) { $activate = mysql_query("UPDATE gb SET `status` = 1 WHERE `id`='".intval($id)."' LIMIT 1"); if($activate) { echo "<p>Eintrag erfolgreich freigeschaltet.</p>"; } else { echo "<p>Eintrag konnte nicht freigeschaltet werden.</p>"; } } elseif($action == "deactivate" && $rang == 1) { $deactivate = mysql_query("UPDATE gb SET `status` = 0 WHERE `id`='".intval($id)."' LIMIT 1"); if($deactivate) { echo "<p>Eintrag erfolgreich deaktiviert.</p>"; } else { echo "<p>Eintrag konnte nicht deaktiviert werden.</p>"; } }
Such nach folgender Codezeile (ca. Zeile 247):
echo "<br />IP: ".$row->ip." | <a href=\"".$pfad."?action=delete&id=".$row->id."\">löschen</a> | <a href=\"".$pfad."?action=kommentieren&id=".$row->id."\">kommentieren</a>";
DANACH fgst du folgende Codezeile ein (Link zum aktivieren/deaktivieren):
if(intval($row->status)==0) { echo "| <a href=\"".$pfad."?action=activate&id=".$row->id."\">freischalten</a>"; } else { "| <a href=\"".$pfad."?action=deactivate&id=".$row->id."\">deaktivieren</a>"; }
admin.php abspeichern.
Nun gehst du in dein phpMyAdmin, gehst in die Datenbank in der du die Gstebuch Tabelle gespeichert hast und klickst auf den Tab/Reiter "SQL". Anschlieend lschst du den Inhalt des groen Textfeldes (dort sollte etwas mit "SELECT * FROM ..." stehen) und fgst diesen Inhalt ein:
ALTER TABLE `gb` ADD `status` INT(1) DEFAULT 0;
Dann klickst du auf OK oder Speichern oder Execute (oder wie auch immer der Button zum ausfhren in deinem phpMyAdmin heit) und anschlieend sollte eine OK Meldung kommen. Wenn nicht, bitte hier die Fehlermeldung posten.
Dann die Dateien gb.php und admin.php hochladen und schauen obs funktioniert.
LG
Der Beitrag wurde insgesamt 1 mal editiert, zuletzt 22.06.2013 um 11:56 Uhr ...