Wie kann ich meinen PHP Formular-Daten aus dem SMTP-E-Mail
ich habe ein Formular auf meiner website, so dass Kunden können buchen Sie einen Boiler-service. Bis vor kurzem war man noch arbeiten, aber meine web-host geändert hat, gibt es spam-Filter. Das Skript wurde dem Absenden des Formulars die Daten aus dem server, aber ich jetzt brauchen, um es zu senden, der smtp-server. Ich habe messing mit diesem Tage jede mögliche Hilfe würde geschätzt.
Dies ist mein Form-code.
<form name="freecontactform" method="post" action="freecontactformprocess.php" onsubmit = "return validate.check(this)">
<table width="400px" class="freecontactform">
<tr>
<td colspan="2">
<div class="freecontactformheader">Boiler Service Form</div>
<div class="freecontactformmessage">Fields marked with <span class="required_star"> * </span> are mandatory.</div>
</td>
</tr>
<tr>
<td valign="top">
<label for="Full_Name" class="required">Full Name<span class="required_star"> * </span></label>
</td>
<td valign="top">
<input type="text" name="Full_Name" id="Full_Name" maxlength="80" style="width:230px">
</td>
</tr>
<tr>
<td valign="top">
<label for="Address" class="required">Address<span class="required_star"> * </span></label>
</td>
<td valign="top">
<input type="text" name="Address" id="Address" maxlength="100" style="width:230px">
</td>
</tr>
<tr>
<td valign="top">
<label for="postcode" class="not-required">Post Code</label>
</td>
<td valign="top">
<input type="text" name="postcode" id="postcode" maxlength="100" style="width:230px">
</td>
</tr>
<tr>
<td valign="top">
<label for="email" class="not-required">Email Address</label>
</td>
<td valign="top">
<input type="text" name="email" id="email" maxlength="100" style="width:230px">
</td>
<tr>
<td valign="top">
<label for="Telephone_Number" class="not-required">Telephone Number</label>
</td>
<td valign="top">
<input type="text" name="Telephone_Number" id="Telephone_Number" maxlength="100" style="width:230px">
</td>
<tr>
<td valign="top">
<label for="Payment" class="not-required">Payment</label>
</td>
<td valign="top"><p>
<input type="radio" name="payment" value="redirect.html"/>
Pay Online Via PayPal<br />
<input type="radio" name="payment" value="thankyou.html"/>
Card/Cash/Cheque on Day<br />
</p></td>
</tr>
<tr>
<td colspan="2" style="text-align:center" >
<div class="antispammessage">
To help prevent automated spam, please answer this question
<br /><br />
<div class="antispamquestion">
<span class="required_star"> * </span>
Using only numbers, what is 10 plus 15?
<input type="text" name="AntiSpam" id="AntiSpam" maxlength="100" style="width:30px">
</div>
</div>
</td>
</tr>
<tr>
<td colspan="2" style="text-align:center" >
<br /><br />
<input type="submit" value=" Submit Form " style="width:200px;height:40px">
<br /><br />
<br /><br />
</td>
</tr>
</table>
</form>
Dies ist mein PHP
<?php
if(isset($_POST['email'])) {
include 'freecontactformsettings.php';
function died($error) {
echo "Sorry, but there were error(s) found with the form you submitted. ";
echo "These errors appear below.<br /><br />";
echo $error."<br /><br />";
echo "Please go back and fix these errors.<br /><br />";
die();
}
if(!isset($_POST['Full_Name']) ||
!isset($_POST['Address']) ||
!isset($_POST['postcode']) ||
!isset($_POST['email']) ||
!isset($_POST['Telephone_Number']) ||
!isset($_POST['payment']) ||
!isset($_POST['AntiSpam'])
) {
died('Sorry, there appears to be a problem with your form submission.');
}
$full_name = $_POST['Full_Name']; //required
$address = $_POST['Address']; //required
$postcode = $_POST['postcode']; //not required
$email = $_POST['email']; //not required
$telephone = $_POST['Telephone_Number']; //not required
$payment = $_POST['payment']; //required
$antispam = $_POST['AntiSpam']; //required
$error_message = "";
$email_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
if(preg_match($email_exp,$email)==0) {
$error_message .= 'The Email Address you entered does not appear to be valid.<br />';
}
if(strlen($full_name) < 2) {
$error_message .= 'Your Name does not appear to be valid.<br />';
}
if($antispam <> $antispam_answer) {
$error_message .= 'The Anti-Spam answer you entered is not correct.<br />';
}
if(strlen($error_message) > 0) {
died($error_message);
}
$email_message = "Form details below.\r\n";
function clean_string($string) {
$bad = array("content-type","bcc:","to:","cc:");
return str_replace($bad,"",$string);
}
$email_message .= "".clean_string($full_name)."\r\n";
$email_message .= "".clean_string($address)."\r\n";
$email_message .= "".clean_string($postcode)."\r\n";
$email_message .= "".clean_string($email_from)."\r\n";
$email_message .= "".clean_string($telephone)."\r\n";
$email_message .= "".clean_string($payment)."\r\n";
$headers = "From: [email protected]";
$headers = 'Reply-To: '.$email."\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($headers, $email_to, $email_subject, $email_message);
?>
<?php
$payment = $_POST['payment'];
if (!empty($payment))
header( 'Location: '.$payment ) ;
}
die();
?>
Ich brauche, um es zu senden von der E-Mail habe ich mit meinem webhost, es ist ein SMTP-server.
Danke im Voraus
9lessons.info/2009/10/send-mail-using-smtp-and-php.html
dies ist, was ich war nach, danke
Froh zu helfen. Ich habe es als Antwort, damit Sie es akzeptieren können, wenn es nützlich war.
dies ist, was ich war nach, danke
Froh zu helfen. Ich habe es als Antwort, damit Sie es akzeptieren können, wenn es nützlich war.
InformationsquelleAutor user1627327 | 2013-01-08
Du musst angemeldet sein, um einen Kommentar abzugeben.
Möchten Sie vielleicht zu prüfen, diese praktischen Artikel:
http://www.9lessons.info/2009/10/send-mail-using-smtp-and-php.html
InformationsquelleAutor BenM
Versenden über einen SMTP-server, müssen Sie ein E-mail script-wie PHPMailer. Für ein starter tutorial, siehe hier.
Ich verspreche, sobald Sie begannen Sie werden finden, PHPMailer ist nicht sehr schwierig.
InformationsquelleAutor N Rohler