Anmelden, um zu folgen  
Folger 0
X-Files

Formmail

5 Beiträge in diesem Thema

Hallo zusammen

Ich bin ein extrem Anfänger auf dem Gebiet von PHP, habe gerade einmal etwas Begriff ahnung und sonst ein wenig. (was das PHP-Handbuch in 12 Kapiteln beschreibt). Nun möchte ich aber gerne ein Kontaktformular mit PHP in meine Seite einbinden. Dazu bin ich mal auf Script Suche gegangen und habe versucht das ganze anzupassen funktioniert aber nicht.

Die Idee ist, dass jemand ein Kontaktformular ausfüllt und dieses dann an mich geschickt wird. Mit Absender und Betreff, Datum.....Und beim erfolgreichen schicken sollte sich wieder die ursprüngliche Seite laden und bei einem Fehler z.B die Seite Fehler.html

Weiss jemand von euch ein gutes Script was nicht zu schwer ist?

Hier einmal der Quelltext den ich versucht habe, es gibt aber ab dem arrayelement dat1 text aus, also die ganze Formel von da an wird aufgelistet. (ab dem fettmarkiertem im Quelltext)

CODE
<?php

$email_from = '$_post["email_from"]';   //Absender falls keiner angegeben wurde
$sendermail_antwort = 1;      //E-Mail Adresse des Besuchers als Absender. 0= Nein; 1 = Ja
$name_von_emailfeld = "Email";   //Feld in der die Absenderadresse steht


//$send_dat ist ein mehrdimensionales Array, in dem zuerst die Empfängeradresse steht,
//dann die CC-Adresse, dann der Betreff und dann die URL, auf die der Besucher weitergeleitet
//wird, wenn die Mail gesendet wurde und zum Schluss die URL, auf die der Besucher weitergeleitet
//wird, wenn ein Fehler beim senden auftrat
$send_dat = array(

"dat1" => [B]array[/B]("marco.amd@bluewin.ch", "mapleducks@bluemail.ch", "Anfrageformular","Formular.html", "Fehler.html"),

"dat2" => array("marco.amd@bluewin.ch", "mapleducks@bluemail.ch", "Anfrageformular","Formular.html", "Fehler.html"),

);


//Diese Felder werden nicht in der Mail stehen
$ignore_fields = array('send_index','Submit','senden_y');

//Hier wird ausgehwählt, welcher "Datensatz" aus $send_dat die Mail bekommt
$send_index = $HTTP_POST_VARS['send_index'];

//Wenn kein send_index gesetzt wurde, bekommt der 1 Datensatz die Mail
if ($send_index!="")
   {
  $st="$send_index";
   }
else
   {
  $st="dat1";
   }


$mailto = $send_dat[$st][0];   //An diese Adresse geht die Email
$mail_cc = $send_dat[$st][1];  //Das ist der CC-Empfänger
$subject = $send_dat[$st][2];  //Betreff der Mail





//Datum, wann die Mail erstellt wurde
$name_tag[0] = "Sonntag";
$name_tag[1] = "Montag";
$name_tag[2] = "Dienstag";
$name_tag[3] = "Mittwoch";
$name_tag[4] = "Donnerstag";
$name_tag[5] = "Freitag";
$name_tag[6] = "Samstag";
$num_tag = date( "w");
$tag =$name_tag[$num_tag];
$jahr = date( "Y");
$n = date( "d");
$monat = date( "m");
$time = (date("H:i"));

//Erste Zeile unserer Email
$msg = ">> Gesendet am $tag, den $n.$monat.$jahr - $time Uhr <<<br><br>";

//Hier werden alle Eingabefelder abgefragt
while (list($_post["name"],$_post["value"]) = each($HTTP_POST_VARS))
   {
  if (in_array($_post["name"], $ignore_fields))
       {
       continue; //Ingnore Feld wird nicht in die Mail eingefügt
       }
   $msg .= ">> $_post["name"] << <br>$_post["value"]<br><br>";
}

$msg = str_replace("<br>", "\n", $msg);
$msg = stripslashes($msg);

//E-Mail Adresse des Besuchers als Absender
if ($sendermail_antwort==1 and isset($HTTP_POST_VARS["$name_von_emailfeld"]))
   {
  $email_from = $HTTP_POST_VARS["$name_von_emailfeld"];
   }

$header="From: $email_from";


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



$mail_senden = mail ($mailto,$subject,$msg,$header);

//Weiterleitung, hier konnte jetzt per echo auch Ausgaben stehen
if($mail_senden == true)
   {
  Header("".$send_dat[$st][3]); //Mail wurde gesendet
   }
else
   {
   Header("".$send_dat[$st][4]); //Fehler beim Senden
  }
?>

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen
CODE
"dat1" => [B]array[/B]("marco.amd@bluewin.ch", "mapleducks@bluemail.ch", "Anfrageformular","Formular.html", "Fehler.html"),


also das [B] um das array ist garantiert falsch. was soll das sein? forums-code für bold? woher soll das kommen?

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen
*g* dachte das zeigt es an, hab ich ja geschrieben ab da an wird nur text gezeigt, im Quelltext hab ich das natürlich nicht drin....

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen
das kapier ich jetzt nicht richtig. bitte kürz deinen code mal auf die essentiellen zeilen. so ist das zu wenig überschaubar.

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen
Ich habs auch aufgegeben, weil ichs nicht überschaut habe, was du eigentlich machen willst. Ausserdem keine Emails posten, wg Spamrobots.

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Erstellen Sie einen Account oder melde Sie sich an um kommentieren zu können

You need to be a member in order to leave a comment

Create an account

Registrieren Sie einen neuen Account in unserer Community. Es ist einfach!


Register a new account

Anmelden

Haben Sie bereits einen Account? Dann melden Sie sich hier an.


Jetzt Anmelden
Anmelden, um zu folgen  
Folger 0