Mal wieder jemand zu blöd: Einbau ins Script

Hier werden Probleme rund um das Rechen Captcha behandelt

Moderator: frameguard

Mal wieder jemand zu blöd: Einbau ins Script

Beitragvon Gauder » 14.01.2008, 22:43

Hühott,

ich krieg es leider auch nicht gebacken, dass Zeug in mein Script einzubauen (es läuft auf jeden Fall wenn ich es einfach als Weiterleitung teste, nur im Script dann nicht).

Die Fehlermeldung die ich erhalte: "Fatal error: Call to undefined function sendemail() in ../mail.php on line 51" ( <- Zeile #51 unten markiert)

Wäre schön, wenn mir jemand helfen könnte:

<?php

session_start();

function encrypt($string, $key) {
$result = '';
for($i=0; $i<strlen($string); $i++) {
$char = substr($string, $i, 1);
$keychar = substr($key, ($i % strlen($key))-1, 1);
$char = chr(ord($char)+ord($keychar));
$result.=$char;
}
return base64_encode($result);
}
$sicherheits_eingabe = encrypt($_POST["sicherheitscode"], "65hg8de91");
$sicherheits_eingabe = str_replace("=", "", $sicherheits_eingabe);
if(isset($_SESSION['rechen_captcha_spam']) AND $sicherheits_eingabe == $_SESSION['rechen_captcha_spam']){
unset($_SESSION['rechen_captcha_spam']);

#################################################
#
# (c) PlaNet Concept e.K., Lars Odermath, 2005
#
#################################################
#
# :: planetMail :: Version vom 12.10.2005
#
# COPYRIGHT NOTICE
# Copyright 2005 PlaNet Concept e.K.
# All Rights Reserved.
# EMail: kontakt-(bei)-planetc.de
# URL : http://www.planetc.de
#
# :: planetMail :: darf von jedem kostenlos benutzt und geändert werden,
# solange dieser Copyright-Verweis und die restlichen Kommentare erhalten bleiben.
#
# Mit dem Einsatz dieses Skripts akzeptieren Sie, daß PlaNet Concept e.K.,
# Lars Odermath, von jeglicher Haftung und Gewährleistung hinsichtlich des
# Einsatzes befreit ist.
#
# Der Verkauf dieses Skripts, auch in modifizierter Form, ist ohne vorherige
# Absprache ausdrücklich untersagt! (Mit anderen Worten: Bitte fragen Sie uns,
# bevor Sie versuchen, mit unserem Script Geld zu verdienen.)
#
# Um dieses Skript über das Internet oder ein anderes Medium
# weiterzuverbreiten, benötigen Sie vorher unsere Erlaubnis. In jeden Fall
# müssen der Copyright-Verweis und die restlichen Kommentare erhalten
# bleiben.
#################################################

sendEmail(); <-- besagte Zeile #51

function sendEmail(){

#################################################
# KONFIGURATION
#################################################


// Zu Testzwecken
// 1 => Der Inhalt der eMail wird in eine Textdatei geschrieben (wenn Sie offline testen möchten)
// 0 => Die eMail wird verschickt
$testOffline = 0;



// Geben Sie hier eine gültige eMail-Adresse von sich an
// Diese eMail-Adresse wird dann auch als Absender-eMail-Adresse angezeigt, wenn die nachfolgende
// Option nicht aktiviert (also auf 1 gesetzt) wird.
// (Dies ist bei manchen Providern Voraussetzung, um Spamming zu verhindern)
$emailFrom = "";



// eMail-Adresse des Versenders als Absenderadresse nutzen (um beispielsweise direkt anworten zu können)
// 1 => Ja | 0 => Nein
$useSendersEmail = 1;

// Geben Sie nachfolgend den Namen des Formularfeldes an, in das der Absender seine
// eMail-Adresse einträgt (Voreinstellung ist: eMail || BEACHTEN SIE GROSS- & KLEINSCHREIBUNG!!!!).
// Die Eingabe ist nur dann notwendig, wenn Sie die vorangehende Option ($useSendersEmail) auf "1" setzen!
$mailFromField = 'eMail';


// SPAM-MISSBRAUCH-SCHUTZ
// Aktivieren Sie den Schutz vor einem Missbrauch des Formmailers durch Spammer!
// Genauere Informationen finden Sie in der README.txt
// 1 => aktiviert | 0 => NICHT aktiviert
$spamProtect = 1;

// Empfänger eMail-Adressen, Subject, Zielseite nach dem Versenden der eMail
// Soll KEINE Kopie der eMail an eine zweite Adresse geschickt werden, so löschen Sie die "Dummy"-eMail-Adresse
// "kopie@ihre_domain.de", so daß nur noch die beiden Hochstriche stehen bleiben ("").
// Ansonsten geben Sie dort bitte eine gültige eMail-Adresse ein.
// Genauere Informationen finden Sie in der README.txt

if($_REQUEST["Betreff"] == "Sonstiges")
{
$subj = $_REQUEST["Betreff_alt"];
}
else
{
$subj = $_REQUEST["Betreff"];
}

$send_dat = array(

"dat1" => array("w...@...de", "", $subj, "send.php"),
#"dat2" => array("", "", "", ""),
#"dat3" => array("", "", "", ""),

);

// Felder aus dem Formular, die NICHT mit der eMail übertragen werden sollen.
// TIPP: Verwenden Sie grafische Buttons als "Absendeknopf", so werden die Koordinaten
// der Klickstelle mit der eMail verschickt. Um diesen (unschönen) Effekt zu umgehen,
// geben sie für den grafischen Button name="senden" ein.
$ignoreFormFields = array('Betreff', 'Betreff_alt', 'send_index', 'senden', 'submit', 'check_form','Submit','senden_y','senden_x');


###########################################################
# ENDE DER KONFIGURATION (AB HIER SOLLTE NICHTS MEHR GEÄNDERT WERDEN!!!!!!!!!!!)
###########################################################

// Datum (+deutsche Tage)
$name_tag = array('Sonntag', 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag');
$day = $name_tag[date('w')];
$year = date('Y');
$n = date('d');
$month = date('m');
$time = (date('H:i'));


// Prüfung, welches send_dat-Array zum senden verwendet werden soll
// Default: dat1
!empty($_POST['send_index']) ? $st = $_POST['send_index'] : $st = 'dat1';


// Versende Daten
$mailto = $send_dat[$st][0]; // Ziel-eMail-Adresse
$mail_cc = $send_dat[$st][1]; // 2. Ziel-eMail-Adresse (Kopie)
$subject = $send_dat[$st][2]; // Subjekt
$redirect = $send_dat[$st][3]; // Zielseite nach eMailversand



// Formularfelder auslesen und in die eMail "einsetzen"
// Zu ignorierende Felder werden NICHT eingesetzt
while (list($fieldName, $fieldValue) = each($_POST))
{
if (in_array($fieldName, $ignoreFormFields) || empty($fieldValue)) continue;
$message .= "$fieldName: $fieldValue\r\n";
}


// Funktion zum prüfen des Inhaltes aufrufen
$message = cleanContent($message, $spamProtect);

// Datum und Zeit voranstellen
$message = "Gesendet am $day, den $n.$month.$year - $time Uhr.\r\n\r\n$message";


// Weiterleitung auf eine andere Seite
Header("Location: $redirect");

// Absender-eMail-Adresse
($useSendersEmail == 1) ? $emailFrom = $_POST[$mailFromField] : $emailFrom = $emailFrom;

$header = "From: $emailFrom";

// Kopie schicken
if (!empty($mail_cc)) {
$header .= "\r\n";
$header .= "Cc: $mail_cc";
}


// eMail verschicken
if ($testOffline == '0') {
@mail ($mailto, $subject, $message, $header)
|| die('<b>Es ist ein Fehler aufgetreten, bitte versuchen Sie es erneut!</b>');
}

// eMail zum testen in ein Textfile schreiben
if ($testOffline == '1') {
$testmail = fopen('email.txt', 'w+');
fwrite($testmail, $message);
fclose($testmail);
}


} // end function



/***** Inhalte "bereinigen" *****/
function cleanContent($content, $spamProtect)
{
$content = str_replace('<br>', "\r\n", $content);
$content = stripslashes(strip_tags($content));

// Spam-Missbrauch-Schutz aufrufen
if($spamProtect == 1) { $content = checkContent($content); }

return $content;
}


/***** Spam-Missbrauch-Schutz *****/
function checkContent($tpcontent)
{
// kritische Zeichen entfernen
$checkit = array("/bcc\:/i","/cc\:/i","/to\:/i");
$tpcontent = preg_replace($checkit, "", $tpcontent);

// Script-Abbruch bei eindeutigem Spamversuchen
if (preg_match("/(MIME\-Version\:|Content\-Type\:)/i", $tpcontent)) {
die('Ihre Angaben enthalten kritische Zeichen! Aus Gründen des Spamschutzes wird Ihre Nachricht nicht versendet.');
}

if (empty($tpcontent)) {
die('');
}

return $tpcontent;
}
}
?>
Gauder
 
Beiträge: 1
Registriert: 14.01.2008, 22:35

Zurück zu Rechen Captcha

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron