Noch nicht viel geschrieben
Bin totaler newbie und habe das Formular aus den Tutorials einbauen können. Doch brauch ich viele Felder nicht wie str. Plz. usw. und wollte die natürlich in der Email auch raushaben doch leider keine ahnung immer wenn ich was löschen will funktioniert nichts mehr.
Hoffe jemand kann mir helfen.
1. Brauche nur Name, Vorname, Anrede, Betreff, Mitteilung und ob Eine Kopie erwünscht ist. Habes dies schon aus dem Formular gelöscht doch bei der email die ich dann bekommen sthen noch alle sachen drin nur halt leer.
2. Die email die ich bekomme und derjenige der sie ausfüllt bekommt alles in einer wurscht z.b.
Sehr geehrte/r Hannes G., Ihre Mitteilung hatte folgenden Inhalt: Strasse HausNr.: Plz Ort: Telefon: E-Mail: hannes.g*********@hotmail.com Mitteilung: Test 1 Sie erhalten in den nächsten Tagen eine Rückmeldung von mir.
Bräuchte dies ein bisschen formatiert. Also zeilenabstände.
3. Er lässt mich keine Email Adressen einfügen die einen Punkt enthalten hab schon vieles probiert aber dann funktionierts nicht mehr.
Ich hoffe jemand kann mir helfen LG
Hoffe jemand kann mir helfen.
1. Brauche nur Name, Vorname, Anrede, Betreff, Mitteilung und ob Eine Kopie erwünscht ist. Habes dies schon aus dem Formular gelöscht doch bei der email die ich dann bekommen sthen noch alle sachen drin nur halt leer.
2. Die email die ich bekomme und derjenige der sie ausfüllt bekommt alles in einer wurscht z.b.
Sehr geehrte/r Hannes G., Ihre Mitteilung hatte folgenden Inhalt: Strasse HausNr.: Plz Ort: Telefon: E-Mail: hannes.g*********@hotmail.com Mitteilung: Test 1 Sie erhalten in den nächsten Tagen eine Rückmeldung von mir.
Bräuchte dies ein bisschen formatiert. Also zeilenabstände.
3. Er lässt mich keine Email Adressen einfügen die einen Punkt enthalten hab schon vieles probiert aber dann funktionierts nicht mehr.
PHP:
<?php
define('ERROR_1', 'Ihre E-Mailadresse ist nicht vorhanden.');
define('ERROR_2', 'Ihre E-Mailadresse ist ungültig.');
define('ERROR_3', 'Ohne Mitteilung kein Kontakt.');
define('ERROR_4', 'Sie haben keinen Familiennamen angegeben.');
define('ERROR_5', 'Sie haben keinen Vornamen angegeben.');
define('ERROR_6', 'Ein leeres Formular nützt nichts.');
define('ERROR_7', 'Die ausgewählte Datei ist zu groß.');
define('ERROR_8', 'Die ausgewählte Datei hat nicht den erlaubten Dateitype');
define('ACTION_PATH', 'anfrage.php');
define('MAIL_SENDER', 'hannes.gaertner@hotmail.com');
define('MAIL_SUBJECT_A','Kontaktmitteilung aus Formular');
define('MAIL_SUBJECT_K','Ihre Kontaktmitteilung');
define('MAILCHARSET', 'utf-8');
define('STARTTEXT',"Mitteilung vom Webformular:\n\r");
define('MAIL_KOPIE', 1);
define('FILE_UPLOAD', 0);
define('ENCTYPE', ' enctype="multipart/form-data"');
define('LOCATION', $_SERVER['HTTP_HOST'] .'/emailok.php'); # relativer path!
$USER_MAIL_TEXT = "Sehr geehrte/r %s %s %s,\n\n\r";
$USER_MAIL_TEXT .= "Ihre Mitteilung hatte folgenden Inhalt:\r\n\n\tStrasse HausNr.: %s %s\r\n\n\tPlz Ort: %s %s\r\n\tTelefon: %s %s\r\n\tE-Mail: %s\r\n\n\t";
$USER_MAIL_TEXT .= "Mitteilung:\r\n\t%s";
$USER_MAIL_TEXT .= "\r\n\nSie erhalten in den nächsten Tagen eine Rückmeldung von mir.";
$htmlAddress = array(0 => 'Optional', 1 => 'Frau', 2 => 'Herr', 3 => 'Firma');
/**
* function _gp($var)
*
* @param int/string $var
* @return int/string
*/
function _gp($var) {
if(isset($var)) {
$val = isset($_POST[$var]) ? $_POST[$var] : '';
return trim($val);
}
}
function _selectAddress($htmlAddress, $select) {
if(is_array($htmlAddress)) {
$ret = '';
foreach($htmlAddress AS $k => $v) {
if(isset($select) && $select == $k) { $selected = ' selected="selected"'; }
else { $selected = ''; }
$ret .= "<option value=\"$k\"$selected>$v</option>\n";
}
return print $ret;
} else {
return print 'Es wurde keine Anrede definiert.';
}
return print $ret;
}
/**
* function _E($int)
*
* @param integer $int
* @return string
*/
function _E($int) {
$array = array( 1 => ERROR_1,
2 => ERROR_2,
3 => ERROR_3,
4 => ERROR_4,
5 => ERROR_5,
6 => ERROR_6,
7 => ERROR_7,
8 => ERROR_8
);
if($array[$int]) return $array[$int];
}
function checkMail($mailAdresse) {
if(isset($mailAdresse)) {
if(phpversion() >= '5.2.0') {
if(!filter_var($mailAdresse, FILTER_VALIDATE_EMAIL)) {
return 2; }
return false;
} else {
if(preg_match('#[\w-]+([\.\w-|\w-]+)@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,3})$/#',
$mailAdresse, $find)) {
return 2;
}
return false;
}
} else {
return 1;
}
}
/**
* checkFile($file)
*
* @param array $file
* @param array $types
* @return boolean
*/
/**
* function fileUpload($file)
*
* @param array $file
* @param integer $action wird zur prüfung auf Fehler verwendet.
* 1 prüft auf Fehler
* 2 erlaubt den Dateiupload
* @return array $array
*/
$textmitteilung = ''; // Variable indiziert
$error_a = 0;
$checkedKopie = '';
$fileName = '';
$m_anrede = _gp('anrede');
if(intval(_gp('action')) == 1) {
// Prüft, ob die E-Mail-Adresse angegeben wurde.
if($m_email = _gp('email')) {
$error_a = checkMail($m_email);
} else {
$error_a = 1;
}
// Prüft, ob eine Mitteilung erfolgte. Wenn nicht, gibt es eine Fehlermeldung.
if(!$m_mitteilung = _gp('mitteilung')) { $error_a = 3; }
// Prüft, ob der Familienname angegeben wurde. Wenn nicht erfolgt eine Fehlermeldung.
if(!$m_fname = _gp('fname')) { $error_a = 4; }
// Prüft, ob der Vorname angegeben wurde. Wenn nicht, erfolgt eine Fehlermeldung
if(!$m_vorname = _gp('vorname')) { $error_a = 5; }
// prüfe ob User Mailkopie wünscht
if($mailKopie = _gp('kopie') == 1) { $checkedKopie = ' checked="checked"'; }
// Prüft, ob eine Anrede ausgewählt wurde, wenn nicht
if(!$m_anrede = _gp('anrede')) { $m_anrede = ""; }
// Prüft, ob alle Pflichtfelder vorhanden sind.
if(!$error_a) {
$fileNameAdmin = '';
$fileNameUser = '';
if(FILE_UPLOAD && is_array($_FILES['file'])) {
$fileName = fileUpload($_FILES['file']);
$fileNameAdmin = $fileName[0];
$fileNameUser = $fileName[1];
}
// Mailbedingungen in From von MIME und HTML
$header = 'MIME-Version: 1.0'."\r\n";
$header .= 'Content-type: text/html; charset='. MAILCHARSET ."\r\n";
$header .= 'From: <'. MAIL_SENDER .'>';
if(isset($htmlAddress[$m_anrede])) { $anrede = $htmlAddress[$m_anrede]; }
else { $anrede = ''; }
// Mitteilungstext für den Seiteninhaber
$mailTextWM = sprintf("%s\r\nAnrede: %s\n\r
Vorname Name: %s %s\n\r
Strasse / HsNr: %s %s\n\r
PLZ Wohnort: %s %s\n\r
Telefon: %s %s\n\rE-Mail: %s\n\r
Mitteilung:\n\n\r%s\r\n\n
Dateiname: %s\r\n\n\nMitgeteilt am: %s",
STARTTEXT,
$anrede,
$m_vorname,
$m_fname,
$m_strasse,
$m_hausnummer,
$m_plz,
$m_ort,
$m_vw,
$m_rn,
$m_email,
$m_mitteilung,
$fileNameAdmin,
date('d.m.Y, H:i:s'));
// E-Mail an Seiteninhaber wird gesendet.
mail(MAIL_SENDER, MAIL_SUBJECT_A, $mailTextWM, $header);
// Bestätigungsmail an Absender
if(defined('MAIL_KOPIE') && MAIL_KOPIE == 1 && $mailKopie == 1) {
// Textzusammenstellung für den Absender
$msgUser = sprintf( $USER_MAIL_TEXT,
$anrede,
$m_vorname,
$m_fname,
$m_strasse,
$m_hausnummer,
$m_plz,
$m_ort,
$m_vw,
$m_rn,
$m_email,
$m_mitteilung,
$fileNameAdmin,
date('d.m.Y, H:i:s'));
// Senden der Bestätigungsmail an den Formularausfüllenden.
mail($m_email, MAIL_SUBJECT_K, $msgUser, $header);
}
// Nun leite um auf die Empfangsbestätigungs-Seite emailok.php.
header('Location: '.LOCATION);
exit();
}
}
?>
<!--
Dieser HTML Teil kann entweder direkt unterhalb des obigen PHP-Teil oder
in ein Template kopiert werden oder alternativ in eine andere PHP-Datei.
Es ist jedoch zwingend erforderlich, dass PHP-Code korrekt geparst wird.
Das Tabellelayout ist lediglich als Beispiel.
-->
<style type="text/css">
.text {
font-family: verdana, arial, helvetica, sans-serif;
font-style: normal;
font-size: 0.8em;
font-weight: normal;
color: #333;
}
.error {
font-family: verdana, arial, helvetica, sans-serif;
font-style: normal;
font-size: 0.9em;
font-weight: normal;
font-weight: bold;
color: #CC0000;
}
table {
margin-left: auto;
margin-right: auto;
text-align: justify;
}
schrift {
text-align:justify;
}
</style>
<?php
// Bereich für Fehlerausgabe
if((int)$error_a) {
echo '<p align="center" class="error">'. _E($error_a) .'</p>';
}
?>
<form action="<?php echo ACTION_PATH; ?>" method="post"<?php echo ENCTYPE; ?>>
<input type="hidden" name="action" value="1" />
<table width="98%" cellspacing="2" cellpadding="5" border="0">
<tr>
<td colspan="2"><p align="right"></td>
</tr><tr>
<td width="31%">Anrede </td>
<td width="69%"><select name="anrede">
<?php
_selectAddress($htmlAddress, $m_anrede);
?>
</select>
</td>
</tr><tr>
<td>Vorname</td>
<td><input type="text" name="vorname" size="40" value="<?php if(isset($_POST['vorname'])) { echo $_POST['vorname']; } ?>" /></td>
</tr><tr>
<td>Name</td>
<td><input type="text" name="fname" size="40" value="<?php if(isset($_POST['fname'])) { echo $_POST['fname']; } ?>" /></td>
</tr><tr>
<td>Ihre E-Mailadresse</td>
<td>
<input type="text" name="email" size="30" maxlength="50" value="<?php if(isset($_POST['email'])) { echo $_POST['email']; } ?>" />
</td>
</tr><tr>
<td valign="top">Mitteilung</td>
<td>
<p>
<textarea name="mitteilung" cols="60" rows="10"><?php if(isset($_POST['mitteilung'])) { echo $_POST['mitteilung']; } ?>
</textarea>
</p>
<p>Um ihre Anfrage so schnell wie möglich bearbeiten zu können bitten wir sie genaue Angaben über Reisedatum, Personenanzahl (Alter) anzugeben.</p></td>
</tr>
<?php
if(MAIL_KOPIE === 1) {
?>
<tr>
<td>Wünschen Sie eine Kopie</td>
<td><input type="checkbox" value="1" name="kopie"<?php echo $checkedKopie; ?> /></td>
</tr>
<?php
}
if(FILE_UPLOAD === 1) {
?>
<?php } ?>
<tr>
<td colspan="2">
<p align="center"><input type="submit" value="Mittelung senden" /></p>
</td>
</tr>
</table>
</form>
Zuletzt bearbeitet von einem Moderator: