f0rd42
Neues Mitglied
Hallo
ich bin gerade dabei, eine schnelle Übersicht zu erstellen, aus der unsere Kollegen erkennen können, welche iPhone Apps auf den Firmengeräten erlaubt sind.
Am Ende der Übersicht soll ein Formular sein, wo neue Apps zur Prüfung beantragt werden können. Die Felder gehen dann per HTTP_POST an eine formmailer.php und werden dort versendet.
Mein Problem ist nun, dass irgendwie die Daten aus dem Formular nicht übernommen / übergeben werden, denn die Email kommt zwar an, trägt als absender jedoch immer "[email protected]" und im Body nur
wobei $email_from eben "[email protected]" ist :-(
hier der Formularausschnitt:
und hier dann der "formmailer.php"
den Formmailer habe ich irgendwo aus dem Internet (kann mich nicht mehr erinnern, von wo)
Wie gesagt, eigentlich funktioniert alles prima, nur die Werte aus dem Formular scheinen nicht übergeben zu werden.
Sicherlich (wie immer) eine total logische Sache, aber ich tüftel hier nun schon seit Stunden und komme nicht drauf.
Jede Hilfe / jeder Tip ist gerne gesehen.
Danke
f0rd42
ich bin gerade dabei, eine schnelle Übersicht zu erstellen, aus der unsere Kollegen erkennen können, welche iPhone Apps auf den Firmengeräten erlaubt sind.
Am Ende der Übersicht soll ein Formular sein, wo neue Apps zur Prüfung beantragt werden können. Die Felder gehen dann per HTTP_POST an eine formmailer.php und werden dort versendet.
Mein Problem ist nun, dass irgendwie die Daten aus dem Formular nicht übernommen / übergeben werden, denn die Email kommt zwar an, trägt als absender jedoch immer "[email protected]" und im Body nur
Code:
Gesendet am $tag, den $n.$monat.$jahr - $time Uhr von $email_from
wobei $email_from eben "[email protected]" ist :-(
hier der Formularausschnitt:
HTML:
<h1>Formular</h1>
<p>
Um Anfragen zu neuen Apps möglichst schnell und reibungslos bearbeiten zu können, haben wir Euch nachstehendes Formular
zur Verfügung gestellt.<strong> Felder mit einem * sind Pflichtfelder!</strong></p>
<p> Eure Anfrage wird automatisch and das Technical Services Ticket System weitergeleitet, Antworten erhaltet Ihr also über die bekannten Wege per EMail.
</p>
<hr />
<form id="form1" name="form1" method="post" action="formmailer.php">
<p><span id="sprytextfield1">
<label>Email Adresse *
<input name="email" type="text" id="email" size="30" />
</label>
<span class="textfieldRequiredMsg">Es muss ein Wert angegeben werden.</span><span class="textfieldInvalidFormatMsg">Ungültiges Format.</span></span></p>
<p><span id="sprytextfield2">
<label>Name der App *
<input name="appname" type="text" id="appname" size="60" />
</label>
<span class="textfieldRequiredMsg">Es muss ein Wert angegeben werden.</span><span class="textfieldInvalidFormatMsg">Ungültiges Format.</span></span>
<label>Hersteller der App
<input name="hersteller" type="text" id="hersteller" size="60" />
</label>
<label>Version
<input name="version" type="text" id="version" size="10" />
</label>
</p>
<p>
<label>Kosten *
<input type="text" name="kosten" id="kosten" />
</label>
<label>
<input type="checkbox" name="kostenlos" id="kostenlos" />
Kostenlos</label>
</p>
<p>Kostenübernahme beantragen?
<label>
<input type="radio" name="radio" id="kostenuebernahme" value="kostenuebernahme" />
Ja</label>
<label>
<input type="radio" name="radio" id="kostenuebernahme2" value="kostenuebernahme" />
Nein</label>
</p>
<p>Wenn eine Kostenünernahme beantragt wird, ist im untenstehenden Feld eine Begründung anzugeben.</p>
<p>
<label>Grund
<textarea name="grund" cols="100" rows="3" id="grund"></textarea>
</label>
</p>
<p> </p>
<p>
<label>
<input type="submit" name="send" id="send" value="Senden" />
</label>
</p>
</form>
und hier dann der "formmailer.php"
PHP:
<?php
$email_from = "[email protected]"; //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" => array("[email protected]", "", "iPhone App Request","http://technet.acme.com/iphone/danke.html", "http://www.url.de/fehler.php"),
"dat2" => array("[email protected]", "[email protected]", "Betreff2","http://www.url.de/ok.php", "http://www.url.de/fehler.php"),
);
//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 von $email_from<<<br><br>";
//Hier werden alle Eingabefelder abgefragt
while (list($name,$value) = each($HTTP_POST_VARS))
{
if (in_array($name, $ignore_fields))
{
continue; //Ingnore Feld wird nicht in die Mail eingefügt
}
$msg .= ">> $name << <br>$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("Location: ".$send_dat[$st][3]); //Mail wurde gesendet
}
else
{
Header("Location: ".$send_dat[$st][4]); //Fehler beim Senden
}
?>
den Formmailer habe ich irgendwo aus dem Internet (kann mich nicht mehr erinnern, von wo)
Wie gesagt, eigentlich funktioniert alles prima, nur die Werte aus dem Formular scheinen nicht übergeben zu werden.
Sicherlich (wie immer) eine total logische Sache, aber ich tüftel hier nun schon seit Stunden und komme nicht drauf.
Jede Hilfe / jeder Tip ist gerne gesehen.
Danke
f0rd42