Also ich hab mal das gesamte Script angehängt! Ich kriegs nicht! Habe das mit dem reset() probiert aber es kommt nicht hin! An was liegt das? Weiss echt nicht mehr weiter habe noch ein paar Sachen probiert aber es geht nicht!
PHP-Code:
<?
session_start();
session_unregister('fehler');
/*Post und Get werden in neue Variable geschrieben damit nachher nur immer eine Variable eingesetzt werden muss*/
/* Geben Sie die Übermittlungsmethode an... (Es stehen POST und GET zur Verfügung) - POST ist sicherer!!! */
$methode = "POST";
$methode = strtolower($methode);
if ($methode == "get") {
$daten = $_GET;
}
else {
$daten = $_POST;
}
/*Die Konfigurationsdatei wird includiert */
include ("config.inc.php");
/*Es wird geprüft ob das Script über ein Formular aufgerufen wurde und alle Felder richtig gesetzt sind*/
if(empty($daten)) {
$fehler= "aufruf";
session_register('fehler');
header("location: $nicht_autorisiert");
exit();
}
if ((!isset($daten[empfaenger])) || (!isset($daten[betreff])) || (!isset($daten[weiterleitung]))) {
$fehler= "felder";
session_register('fehler');
header("location: $nicht_autorisiert");
exit();
}
$absender_form = false;
if((isset($daten[absender]))) {
$absender_form = true;
}
/* Anfragende Email und Domain werden festgelegt und bereitgestellt*/
$anfragende_email = $daten[empfaenger];
$anfragende_email = strtolower($anfragende_email);
$anfragende_email = trim($anfragende_email);
$referer = $_SERVER['HTTP_REFERER'];
$domain = explode("http://",$referer);
$domain = $domain[1];
$domain = explode("/",$domain);
$anfragende_domain = $domain[0];
$anfragende_domain = strtolower($anfragende_domain);
$anfragende_domain = trim($anfragende_domain);
/* Email wird mit dem entsprechenden Array aus der Konfiguration verglichen */
$email= false;
if (in_array($anfragende_email, $erlaubte_email)) {
$email= true;
}
/* Domains werden mit dem entsprechenden Arrays aus der Konfiguration verglichen */
$domain= false;
if (in_array($anfragende_domain, $erlaubte_domain)) {
$domain= true;
}
/* Es wird überprüft ob die beiden Variablen $email und $domain auf true stehen*/
if ((!$email) || (!$domain)) {
$fehler= "auto";
session_register('fehler');
header("location: $nicht_autorisiert");
exit();
}
/* Die Variablen aus den Versteckten Feldern werden in neue Variablen überführt*/
$betreff = $daten[betreff];
$weiterleitung = $daten[weiterleitung];
$empfaenger = $daten[empfaenger];
$absender_mail = $daten[absender];
/* Überflüssige Variablen werden aus dem Array entfernt*/
unset($daten[betreff]);
unset($daten[weiterleitung]);
unset($daten[empfaenger]);
unset($daten[absender]);
unset($daten[senden]);
/* Die Auswertung für Methode GET und POST über die am Anfang definierte Variable $daten wird durchgeführt*/
reset($daten);
$linie = -1;
foreach($daten as $name => $value) {
if(!$linie) {
$linie = "$name - $value\n";
$linie++;
}
else {
$inhalt .= "$name - $value\n";
$linie++;
}
}
/* Variablen für Header und Empfänger und Mail werden gesetzt und bereitgestellt*/
if ((!$absender) || (!$absender_form)) {
$headers .= "From: <$credits[Info8]>\r\n";
$headers .= "X-Mailer: NetMailer 1.0";
}
else {
$headers .= "From: <$absender_mail>\r\n";
$headers .= "X-Mailer: NetMailer 1.0";
}
$empfaenger_formular = $empfaenger;
$betreff_formular = $betreff;
$weiterleitung_formular = $weiterleitung;
$nachricht = $kopf;
$nachricht .= $inhalt;
$nachricht .= $fuss;
/* Mail wird zusammengestellt und versendet*/
if (mail($empfaenger_formular, $betreff_formular, $nachricht, $headers)) {
header("location: $weiterleitung_formular");
exit();
}
else {
$fehler= "senden";
session_register('fehler');
header("location: $nicht_autorisiert");
exit();
}
?>
Gruss: Spin