تغییرات در mail.php

panahjoo

Member
کدهای Php زیر فیلدهای پرشده فایل form.html را به ایمیل ارسال میکنند:
کد:
<?php
$receiver = "[email protected]";
$name = "Munster Text";

$site_email = "[email protected]";
$sname = "Munster";

// subject
$subject = 'Kontakt FORMULAR';

// message
$message = '
<html>
<head>
 <title>INFORMATION</title>
</head>
<body>
 <table style="font-family:Tahoma,Arial;font-size:10pt">
   <tr>
     <td>Name: '.$_POST['name'].'</td>
   </tr>
      <tr>
     <td>Vorname: '.$_POST['vorname'].'</td>
   </tr>
      <tr>
     <td>E-Mail: '.$_POST['email'].'</td>
   </tr>
      <tr>
     <td>Strasse: '.$_POST['strasse'].'</td>
   </tr>
      <tr>
     <td>PLZ/ORT: '.$_POST['ort'].'</td>
   </tr>
      <tr>
     <td>Tel: '.$_POST['Tel'].'</td>
   </tr>
   <tr>
     <td>Message: '.nl2br($_POST['Message']).'</td>
   </tr>
 </table>
</body>
</html>
';

// To send HTML mail, the Content-type header must be set
$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";

// Additional headers
$headers .= 'To: '.$name.' <'.$receiver.'>' . "\r\n";
$headers .= 'From: '.$sname.' <'.$site_email.'>' . "\r\n";

// Mail it
mail($receiver, $subject, $message, $headers);



echo '<div align="center" style="font-family:Tahoma;font-size:8pt;color:#000000">Send<br />
<a href="../form.htm">back to the site</a></div>';

?>

حال من میخوام فیلدهای خالی را در ایمیل دریافت نکم. ایمیل دریافتی الان:
کد:
Name: name
Vorname: vorname
E-Mail: 
Strasse: munsterstrasse
PLZ/Ort: Munsterort
Telefon: 
Message: test message
که شخص ارسال کننده ایمیل و تلفن را خالی گذاشته است؛ حال من میخواهم این ایمیل را به شکل زیر دریافت کنم:
کد:
Name: name
Vorname: vorname
Strasse: munsterstrasse
PLZ/Ort: Munsterort
Message: test message
امیدوارم تونسته باشم مطلب را رسونده باشم. حال برای این که این قسمتهای خالی را در ایمیل مخفی کنیم چه تابعی را باید به mail.php یا شاید هم به form.html اضافه کنم.
متشکر از راهنماییتون.
 

balabala

New Member
PHP:
<?php
$receiver = "[email protected]";
$name = "Munster Text";
$site_email = "[email protected]";
$sname = "Munster";
// subject
$subject = 'Kontakt FORMULAR';
// message
$message = '
<html>
<head>
 <title>INFORMATION</title>
</head>
<body>
 <table style="font-family:Tahoma,Arial;font-size:10pt">';
if($_POST['name']!="") $message .= '
   <tr>
     <td>Name: '.$_POST['name'].'</td>
   </tr>';
if($_POST['vorname']!="") $message .= '
      <tr>
     <td>Vorname: '.$_POST['vorname'].'</td>
   </tr>';
if($_POST['email']!="") $message .= '
      <tr>
     <td>E-Mail: '.$_POST['email'].'</td>
   </tr>';
if($_POST['strasse']!="") $message .= '
      <tr>
     <td>Strasse: '.$_POST['strasse'].'</td>
   </tr>';
if($_POST['ort']!="") $message .= '
      <tr>
     <td>PLZ/ORT: '.$_POST['ort'].'</td>
   </tr>';
if($_POST['Tel']!="") $message .= '
      <tr>
     <td>Tel: '.$_POST['Tel'].'</td>
   </tr>';
if($_POST['Message']!="") $message .= '
   <tr>
     <td>Message: '.nl2br($_POST['Message']).'</td>
   </tr>';
$message .= '
 </table>
</body>
</html>
';
// To send HTML mail, the Content-type header must be set
$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";
// Additional headers
$headers .= 'To: '.$name.' <'.$receiver.'>' . "\r\n";
$headers .= 'From: '.$sname.' <'.$site_email.'>' . "\r\n";
// Mail it
mail($receiver, $subject, $message, $headers);
 
echo '<div align="center" style="font-family:Tahoma;font-size:8pt;color:#000000">Send<br />
<a href="../form.htm">back to the site</a></div>';
?>
 

panahjoo

Member
ممنون از راهنماییتون
ممکنه راهنمایی کنین من اگه بخوام پس از ارسال ایمیل یک صفحه مثلا thanks.html باز بشه از چه تابعی استفاده کنم.
$next_page = "thanks.html";
الان یه صفحه سفید می یاد که توش میشه مثلا نوشت: ممنون پیامتون ارسال شد
و زیرشم یه لینک به صفحه اول سایت.
با این فرم میشه اینکار رو کرد ولی روی سرورم از وقتی که register_global رو بستن دیگه این فرم کار نمیکنه. ممکنه بگین کجای این فرم رو باید تغییر بدم تا درست کار بکنه.

PHP:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>

<head>
<?
$email_address = "[email protected]";
$email_name = "tester";
$next_page = "thanks.html";

$body = "";
$body .= "Name: " . $name . "\n";
$body .= "Company: " . $company . "\n";
$body .= "Location: " . $location . "\n";
$body .= "Phone: " . $phone . "\n";
$body .= "eMail: " . $email . "\n";
$body .= "website: " . $website . "\n";
$body .= "Message:\n  " . preg_replace("\n", "\n  ", $message) . "\n";

$headers = "";
$headers .= "From: " . $email_name . " <" . $email_address . ">\n";
$headers .= "X-Sender: <" . $email_address . ">\n";
$headers .= "X-Mailer: PHP\n";
$headers .= "X-Priority: 1\n";
$headers .= "Return-Path: <" . $email_address . ">\n";
$headers .= "Content-Type: text/html; charset=UTF-8\n";

@mail($email_address, "Contact from tester.com", "<pre>" . $body . "</pre>", $headers);

header("Location: " . $next_page);
?>
 

جدیدترین ارسال ها

بالا