Page 1 of 1

INFO: Spamschutz für Gästebuch - Wer Trägt was dazu bei?

Posted: Wed Apr 05, 2006 5:54 pm
by -=DV|$tr@nger=-
Hallo,

vielleicht gehört der eine oder andere von euch auch zu den geplagten Leuten die ständig den Spam aus dem Gästebuch löschen müssen. Falls ja und ihr gerne dem ganzen ein Ende setzen würde, wäre es von Vorteil wenn ihr einen kleinen finanziellen Beitrag dazu Spenden würdet. Wenn wir dadurch etwas zussammen bekommen, würde sich "garvinhicking" dazu bereit erklären die bekannte "Captchas" Funktion (Wie z.b. beim Kontaktformular) für das Gästebuch umzusetzen.

Wäre jemand bereit dazu, einen kleinen Betrag dafür Springen zu lassen?

Die Idee stammt aus folgendem Thread:
http://www.s9y.org/forums/viewtopic.php ... art=0&sid=

Posted: Sun Apr 23, 2006 4:22 pm
by -=DV|$tr@nger=-
Mittlerweile ist schon ne weile vergangen und der Thread hat schon über 100 Klicks und niemand hat Interesse daran, das finde ich wirklich sehr schade. Naja, da kann man wohl nicht viel machen wenn kein Interesse an so einer Funktion besteht. dachte eigentlich eher daran das noch andere ausser mir mit Spam im Gbook zu Kämpfen haben. :?

Posted: Sun Apr 23, 2006 6:05 pm
by robert
Die Frage ist wieviele ein Gästebuch in ihrem Blog auch nutzen. Ich hatte es mal drinnen, aber es war nicht sehr gefragt. Ich bin eher froh, wenn die Leute zu den Beiträgen posten.
Manche "mißbrauchten" das Gästebuch dazu Fragen zu stellen, die eigentlich in Beiträge gehörten - aber sie waren zu "faul" zum suchen.
Aber anderes Blog - andere Gäste :wink:

Behelfen könnte man sich ja in dem man einen Beitrag "Gästebuch" nennt und diesen kann dann jeder kommentieren. Vielleicht nicht perfekt aber durchaus möglich.
Nimmst du für diesen Eintrag eine (Sub-)Kategorie kannst du sogar noch am Template ein bisschen feilen, sodass es vielleicht besser passt.
Dies nur als Workaround.

Posted: Sun Apr 23, 2006 8:01 pm
by -=DV|$tr@nger=-
Naja, das mit dieser anderen Lösung per Beitrag finde ich eher suboptimal. Ich würde da ein richtiges Gästebuch doch lieber bevorzugen.

Vielleicht muss ich mir wirklich überlegen ob ich das Gästebuch nicht abschaffe da es für mich eh keinen Sinn bringt mit dem Täglich anfallenden Spam darin.

Posted: Tue Apr 25, 2006 10:27 am
by Soulprayer
Ich bin bereit ein paar Euro dafür locker zu machen.
Aber wg. momentanem Umzug sind es nicht sehr viele. ;)

Nur wäre ich für Tomb Raider, wenn Garvin Oblivion in die Hände bekommt, sehen wir ihn die nächsten zwei Wochen wahrscheinlich nicht... :D ;)

Ich denke, die Bereitschaft ist hoch, nur haben viele keine Zeit, sind nicht angemeldet oder was-auch-immer, warum sie hier nicht schreiben.

Wie sieht's aus?
Mach doch mal einen Paypal-Acc nur für das Ziel der Spendensammlung.

Posted: Tue Apr 25, 2006 10:53 am
by garvinhicking
Hi!

Zu spät, Oblivion habe ich von meinem Bruder bekommen *eg*. Aber an Tomb Raider habe ich nach wie vor Interesse ;)

Wie auch immer,
viele Grüße,
Garvin

Posted: Sun May 14, 2006 10:37 am
by Timbalu
gehts um sowas?
jetzt issse wieder wech.....
ich glaube mich erinnern zu können, dass das kleinste Problem war....

Posted: Sun May 14, 2006 2:49 pm
by -=DV|$tr@nger=-
Genau um sowas, richtig. Meinst du, du könntest das Veröffentlichen?

Posted: Sun May 14, 2006 4:21 pm
by Timbalu
Klar......,
aber eigentlich möchte ich Garvin nicht um sein Geschenk bringen....
vielleicht geht ja beides ;)

Posted: Sun May 14, 2006 5:37 pm
by garvinhicking
Also um mich geht es hier nicht; wenn Du den Code beitragen möchtest würdeich mich im Gegenteil sehr freuen. Mir gehts ja auch nur darum, dass s9y nutzer glücklich sind. :)

Grüße
Garvin

Posted: Sun May 14, 2006 7:45 pm
by Timbalu
na denn.... ;)
nur das Wesentlichste - ich habe mein Gästebuch völlig umgestaltet....

Code: Select all

include dirname(__FILE__) . '/lang_en.inc.php';

switch ($serendipity['lang']) {
    case 'de' :
      @define('PLUGIN_GUESTBOOK_CAPTCHAWARNING', '');
      @define('ERROR_ISFALSECAPTCHA', 'Die Spamschutz-Grafik-Zeichen stimmen nicht überein!');
      break;

	case 'en' :
    default :
        @define('PLUGIN_GUESTBOOK_CAPTCHAWARNING', '');
        @define('ERROR_ISFALSECAPTCHA', 'your CAPTCHA entry is false, please return!');
        break;
}

und dann weiter unten

Code: Select all

    function showShoutPage() {
        global $serendipity;

	$errors = array ();
        $valid['captcha'] = FALSE;

        //maximale eintrage pro Seite
        $max_entries = $this->get_config('numberitems');
        if (!is_numeric($max_entries)) {
            $max_entries = 5;
        }
        $wordwrap = $this->get_config('wordwrap');
        if (!is_numeric($wordwrap)) {
            $wordwrap = 50;
        }
        $timelock = $this->get_config('timelock');

        if (!is_numeric($timelock)) {
            $timelock = 10;
        }


       if(isset($_POST['serendipity']['captcha'])) {
		if($_POST['serendipity']['captcha'] == $_SESSION['spamblock']['captcha'] ) {
			$valid['captcha'] = TRUE;
		} else {
		  	array_push($errors, ERROR_ISFALSECAPTCHA);
		}
	}

	

        //Put new entry into the database if captcha true
        if( !empty($_POST['action']) && $_POST['action'] == 'fillguestbook'
						&& $valid['captcha'] == TRUE) {

       //Put new entry into the database if necessary
        if (!empty ($_REQUEST['action']) && $_REQUEST['action'] == 'fillguestbook' 
						&& trim($serendipity['POST']['shouttext']) != '' 
						&& trim($serendipity['POST']['shoutname']) != '' 
						&& !(serendipity_db_bool($this->get_config('sessionlock')) 
						&& isset ($_SESSION['serendipity_haswritten'])) 
						&& (!isset ($_SESSION['serendipity_last_guestbook_entry']) || ((time() - $_SESSION['serendipity_last_guestbook_entry'] > $timelock)))) {

[......]

						}
					}
ergänzt durch eine error Anzeige vor der form (oder wo auch immer)

Code: Select all

        //only one entry per session
        if (!(serendipity_db_bool($this->get_config('sessionlock')) && isset ($_SESSION['serendipity_haswritten']))) {


     // Output all possible errors
        if (is_array($errors) && count($errors) > 0) {

            echo '<div class="gbook_error_bundled"><ul>';
            echo ERROR_OCCURRED;
            foreach ($errors as $error) {
                echo '<li class="gbook_errors">'.$error.'</li>';
            }
            echo '</ul></div><br />';

        }

?>

       <form action="<?php echo serendipity_currentURL(); ?>" method="post">
       <input type="hidden" name="action" value="fillguestbook" />
Allerdings - hatte ich den Eindruck - hat dieser 'phentermine' Spammer eine Möglichkeit gefunden die Captchas auszulesen, bis ich eine badwords liste eingefügt habe. Dann war wieder Ruh!

Ich hoffe ich habe nichts vergessen und hoffentlich gibts vom Garv nicht gleich wieder was auf die Finger.....
Ian

Posted: Mon May 15, 2006 9:21 am
by garvinhicking
Ah, so hast Du es eingabaut. Das macht für Captchas Sinn; mein Plan wäre jedoch gewesen, das ganze Spamblock-Plugin für's Gästebuch nutzbar zu machen, wie halt im Kontaktformular. So dass auch Autorennamen und Inhalte gegen die Settings im Spamblock Plugin gecheckt werden können. Vielleicht wäre das ja mal ne Idee für eine Folgeversion des PatcheS? :)

Viele Grüße,
Garvin

Posted: Thu May 18, 2006 3:06 pm
by lordcoffee
Meine Lösung ist das ich einfach einen Eintrag namens Gästebuch erstellt habe zu dem man Kommentare posten kann. Da die Captchas bei den Eintrags-kommentaren ja funktionieren hab ich damit keine Probleme mehr... Zumindest vorerst...

Meine Lösung

Lordcoffee