2013-03-06 103 views
-1

我有一个表单HTML/PHP,简单,名称,主题和评论,这是发送到我的雅虎邮件,我有两个问题,textarea评论也发送HTML标记,如果有人把新行(输入)如何删除这个,我得到服务器/主机名称时收到电子邮件,有没有办法使一些像我的网站的名称或类似的东西,而不是主机名称的通用主题?表单提交

if(!isset($_POST['submit'])) 
{ 
$ToEmail = '[email protected]'; 
$EmailSubject = 'Pitanje sa site.com'; 
$mailheader = "From :". $_POST["email"]. "\r\n"; 
$mailheader .= "Reply to :". $_POST["email"]. "\r\n"; 
$mailheader .= "Ova poruka sadrzi pitanje postavljeno na www.site.com \r\n"; 
$MESSAGE_BODY = "Ime : " .$_POST["name"]." \r\n"; 
$MESSAGE_BODY .= "Email : " .nl2br($_POST["email"])." \r\n"; 
$MESSAGE_BODY .= "Naslov : " .$_POST["subject"]." \r\n"; 
$MESSAGE_BODY .= "Poruka : " .nl2br($_POST["feedback"])." \r\n"; 
mail($ToEmail, $EmailSubject, $MESSAGE_BODY, $mailheader) or die ("Failure"); 
echo "Vaša poruka je uspješno poslana! Kliknite <a href=\"index.html\">ovde</a> za početnu stranu "; 
}; 
+1

你可以把你的PHP代码发送电子邮件? – 2013-03-06 14:58:12

+0

我犯了错误,在雅虎马里问题不是来自于,我从邮件中的主题名中。 所以我应该使用: $ headers。='From:Me <[email protected]>'。为 “\ r \ n” 个;像Xaltar说的... – wired 2013-03-06 15:10:43

回答

3

OK,我真的不明白你的问题,但在这里它去...

1)你要删除的HTML标签?如果是这样,请使用strip_tags()功能

2)您必须发送标题。举例来说,如果你使用mail()功能,你应该做这样的事情:

$to = '[email protected]'; 
$subject = 'Subject'; 
$message = 'Your Message'; 
$headers = 'From: Your Name <[email protected]>'; 
mail($to, $subject, $message, $headers); 
0

您可以发送电子邮件从你形成这样的:

$to = "[email protected]"; 
$subject = "Your subject here"; 
$body = "The comment values here"; 
if (mail($to, $subject, $body)) { 
    echo("<p>Message successfully sent!</p>"); 
} else { 
    echo("<p>Message delivery failed...</p>"); 
} 

删除HTML新您可以通过用户使用正则表达式

$body = preg_replace("/<br */?>/","\n",$body); 
功能 str_replace("<br/>","\n", $body);

或者更好的办法行

0

我认为你可以使用“nl2br”正确格式化textarea。

此外,为头,你可以格式化他们要像你想,如果你使用了“从”头本应删除的服务器的名称:

$headers = 'From: Me <[email protected]>' . "\r\n"; 

然后

mail($to, $subject, $message, $headers);