Catchpa

Fragen und Tipps & Tricks zur Newsletter Software SuperMailer oder zum BirthdayMailer

Moderatoren: mirko, Wolfi

Antworten
Benutzeravatar
mirko
Beiträge: 23073
Registriert: 25.11.2001, 15:14
Wohnort: Leipzig
Kontaktdaten:

Re: Catchpa

Beitrag von mirko »

Ist ein reines UTF-8 Problem, die Umlaute bestehen aus 2 Zeichen. Ich denke mal die Dateien wurden alle im Texteditor mit UTF-8 Codierung gespeichert, das muss aber normales ANSI sein. Sollte die eigenen Webseite utf-8-codiert sein, dann muss im Script die Angabe

$WebsiteContentCharset="iso-8859-1";

auf

$WebsiteContentCharset="utf-8";

geändert werden.
uwe123
Beiträge: 3
Registriert: 24.02.2013, 15:14

Re: Catchpa

Beitrag von uwe123 »

Hallo,

inzwischen funktioniert die Captcha-Anmeldung.
Habe ich des Öfteren getestet und die Anmelde-Emails kommen bei mir an.

-----------------------------
Allerdings nicht mit richtigen Umlauten in der Captacha-Fehlermeldung:
Bild

Auch nicht mit richtigen Umlauten in der Anmelde-Email:

EMail: x@x.x
Anrede: Herr
Titel:
Vorname:
Nachname: Müller
user_captcha_string: Infoscha
IP: 91.59......
Datum: 27.02.2013
Uhrzeit: 12:17
Bezug: Newsletter
--------------------------------
Es werden weiterhin im NL-Anmledeformular Zeichen wie: "echo/`/;/?>"angezeigt.
Bild

Folgende Einträge stehen in meiner NL-Anmeldeseite (newslettter.html) in den ersten Zeilen:
<?php

/* Captcha */

header('P3P:CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"');

/* Session starten */

@session_start();

/* Klassen einbinden */

require 'captcha_image_maker/require/config.php';

require 'captcha_image_maker/require/crypt.class.php';

/* Crypt-Klasse initialisieren */

$GLOBALS['crypt_class'] = new crypt_class();

/* Captcha */

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html dir="ltr" xmlns="http://www.w3.org/1999/xhtml">

Am Ende des Formulars steht das hier:

<!--Newsletteranmeldung beginnt hier-->
<form method="POST" action="newsletter.php">


<p><font face="Verdana, Arial, Helvetica" size="1"><span class="auto-style7">Ihre E-Mail-Adresse:</span><br/>
<input type="text" name="EMail" size="37"/></font></p>

<p><span class="auto-style7">Anrede (Frau/Herr):</span><font face="Verdana, Arial, Helvetica" size="1"><br/>
<input type="text" name="Anrede" size="37"/></font></p>

<p><span class="auto-style7">Titel (Prof./Dr.):</span><font face="Verdana, Arial, Helvetica" size="1"><br/>
<input type="text" name="Titel" size="37"/></font></p>

<p><span class="auto-style7">Ihr Vorname:</span><font face="Verdana, Arial, Helvetica" size="1"><br/>
<input type="text" name="Vorname" size="37"/></font></p>

<p><span class="auto-style7">Ihr Nachname:</span><font face="Verdana, Arial, Helvetica" size="1"><br/>
<input type="text" name="Nachname" size="37"/></font></p>

<p><font face="Verdana, Arial, Helvetica"><span class="auto-style7">Sie möchten sich für
unseren Newsletter</span></font></p>
<p><font face="Verdana, Arial, Helvetica" size="1">
<input type="radio" value="subscribe" checked name="Action" class="auto-style6"/><span class="auto-style6">
anmelden<br class="auto-style8"/>
</span>
<input type="radio" name="Action" value="unsubscribe" class="auto-style7"/><span class="auto-style7"> abmelden</span></font></p>
<p><font face="Verdana, Arial, Helvetica" size="1">

<?php

// captcha

echo 'Geben Sie das Wort, wie im nachfolgenden Feld angezeigt, ein (Spam-Schutz):<br>';

echo '<input type="text" name="user_captcha_string"><br><br>';

echo '<img src="captcha_image_maker/require/image.php?'. md5(uniqid(rand(), true)).'">';

?>

<input type="submit" value="Abschicken" name="SubmitBtn" class="auto-style6"/></font><span class="auto-style6"><br/><br/>
<span style="font-size:7pt">Powered&nbsp;by&nbsp;
<a href="http://www.supermailer.de" target="_blank">SuperMailer</a></span>
</span>
</p>
</form>
<!--Newsletteranmeldung endet hier-->

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Wenn ich die HTML Seite speichere, kommt dieser Hinweis:

Diese Seite enthält mindestens einen PHP-Skriptblock,
weshalb die Seite mit einer PHP-Dateierweiterung gespeichert werden muss.
Entfernen Sie die PHP-Skriptblöcke aus der Seite,
oder speichern Sie die Datei mit einer PHP-Dateierweiterung.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

In der newsletter.php stheht dieses hier ab der Zeile 225:

##################################### Spam test

/* Captcha */

$IgnoreCaptcha = false;

if(isset($_GET["IgnoreCaptcha"])) {

$IgnoreCaptcha = true;

}



header('P3P:CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"');


/* Session starten */

@session_start();



/* Klassen einbinden */

require 'captcha_image_maker/require/config.php';

require 'captcha_image_maker/require/crypt.class.php';



/* Crypt-Klasse initialisieren */

$GLOBALS['crypt_class'] = new crypt_class();



if ( (!$IgnoreCaptcha) && (($Action == "subscribe") || ($Action == "unsubscribe") || ($Action == "edit")) ) {

if ( (!isset($_POST['user_captcha_string'])) || ($_POST['user_captcha_string'] == '') ) { # if captcha is empty

print "Sie müssen das Wort für den Spam-Schutz, wie auf dem Bild angezeigt, korrekt eingeben.!";

exit;

}



if ( (!$IgnoreCaptcha) && ($_POST['user_captcha_string'] !=

$GLOBALS['crypt_class']->base64_decode_advanced( $_SESSION['captcha_string']) ) ) { # captcha check

print "Sie müssen das Wort für den Spam-Schutz, wie auf dem Bild angezeigt, korrekt eingeben.!";

exit;

}

}

/* Captcha */
Benutzeravatar
mirko
Beiträge: 23073
Registriert: 25.11.2001, 15:14
Wohnort: Leipzig
Kontaktdaten:

Re: Catchpa

Beitrag von mirko »

Ja die Worte kann man ändern, man sollte aber nicht zu wenige verwenden, denn ein Spambot kann durch "rumtesten" bei einer geringeren Anzahl Worte die Lösung leichter erraten und sich damit anmelden.

strftime("%x %X") sollte gehen, falls nicht im Script nach <?php angeben

setlocale (LC_ALL, 'de_DE');
setlocale (LC_TIME, 'de_DE');
date_default_timezone_set("Europe/Berlin");

gibt es dann Fehlermeldungen, ist das PHP älter, dann gibt es diese Funktionen noch nicht.

Die Sache mit dem date() geht natürlich auch.
uwe123
Beiträge: 3
Registriert: 24.02.2013, 15:14

Re: Catchpa

Beitrag von uwe123 »

Aaahh ja, kann ich alternativ in dem captcha_image_maker-Unterordner auch einfach die Wörter-Liste in der words.php beliebig ändern? Da sind ja über 2000 Wörter enthalten. Wenige Hundert Wörter sollten eigentlich reichen.

Ich hatte schon seit Jahren Änderungen immer im HTML-Editor (Microsoft Expression Web) statt im Text-Editor. Werde künftig wieder Edit4Win benutzen. Ich nehme an, dass es auch unter Windows 8-64bit läuft.

Noch eine andere Frage, funktionieren folgende beiden Einträge in der newsletter.php:
$message .= "Datum: ".date("d.m.Y")."\n";
$message .= "Uhrzeit: ".date("H:i")."\n";
Denn der folgende "neue Eintrag" vom Generator wird bei der Anmeldung nicht angezeigt:
$message .= "DateTime: ".strftime("%x %X")."\n";
Benutzeravatar
mirko
Beiträge: 23073
Registriert: 25.11.2001, 15:14
Wohnort: Leipzig
Kontaktdaten:

Re: Catchpa

Beitrag von mirko »

Ja bei langen Worten fehlen die letzten Buchstaben, man muss in dem Fall auch nur die angezeigten Buchstaben eingeben.

Wenn echo und ; angezeigt wird, dann wurde der HTML-Code in einem HTML-Editor bearbeitet, der die <?php Angaben ersetzt hat, muss man natürlich in einem Texteditor wieder korrekt auf <?php ?> zurück ändern.
uwe123
Beiträge: 3
Registriert: 24.02.2013, 15:14

Re: Catchpa

Beitrag von uwe123 »

Hallo,
auch bei mir funktioniert es nicht.
Die Captcha-Informationen sind zwar auf der NL-Anmeldeseite zu sehen.
Doch bei langen Wörtern fehlen die letzten Buchstaben.
Außerdem ist das Grafikbild teilweise mit folgenden Wörtern/Zeichen umrahmt:
"echo" und ";" ",".
Der Spamschutz-Hinweis (Geben Sie das Wort ...) erscheint auch nicht.
Benutzeravatar
mirko
Beiträge: 23073
Registriert: 25.11.2001, 15:14
Wohnort: Leipzig
Kontaktdaten:

Re: Catchpa

Beitrag von mirko »

Genau die Anleitung unter http://www.supermailer.de/captcha/ befolgen, dabei muss beachten, dass das Anmeldeformular sich innerhalb einer PHP-Datei befinden muss, eine simple HTML-Datei kann man nicht verwenden. In CMS kann man dieses nicht einbauen, außer man kennt sich mit dem jeweiligen CMS sehr gut aus bzw. das CMS bietet entsprechende Module zur Einbindung von PHP-Code an.
ernesto2649
Beiträge: 17
Registriert: 28.01.2012, 17:00

Catchpa

Beitrag von ernesto2649 »

lieber mirko boer, ich bin wahrscheinlich zu dumm dazu. aber ich schaffe es nicht deiner sehr guten beschreibung folgend ein catchpa einzusetzen, das die abfrage auf eine neue email adresse nicht so einfach macht. nützt es was wenn ich das mein php file sende, und sie es dann für mich einbauen. ich bin auch gerne bereit geld in die hand zu nehmen. danke für eine antwort. ein sehr zufriedener user.
Antworten