【问题标题】:How to create an Email Form that send message to target email? [duplicate]如何创建将消息发送到目标电子邮件的电子邮件表单? [复制]
【发布时间】:2016-01-17 13:58:30
【问题描述】:

所以我正在尝试为我的联系我们页面创建一个电子邮件表单。我的问题是我不知道这个电子邮件表单如何为我的表单提供此代码 如下图:

<form method = "post" action = "contactus.php" enctype="multipart/form-data">
<div class = "emailform">
    <input type = "text" placeholder = "Name" name = "name" style="width:450px; padding:5px;" required><br>
    <input type = "text" placeholder = "Email" name = "email" style="width:450px; padding:5px;" required><br>
    <textarea name = "message" placeholder = "Message" style = "width:450px; padding: 5px; height: 155px;" required></textarea><br>
    <button type = "submit" name = "send">Send</button>
</div>
</form> 

如果有人回答会很有帮助 顺便说一句,我只使用记事本++来编辑我的代码。 我也是一个新手:)

提前谢谢你

【问题讨论】:

标签: php html forms email


【解决方案1】:

在您的contactus.php页面中试试这个。

<?php


$to = "recieveraddress@mail.com";
$subject = "Your subject";
$txt = $_POST['message'];
$headers = "From: ".$_POST['email'];

mail($to,$subject,$txt,$headers);
?> 

【讨论】:

  • 所以我完全按照你说的做了,但是我遇到了一些 php 错误,例如未识别的索引:消息和未识别的索引:电子邮件。还有这个错误:
  • 警告:mail():无法连接到“localhost”的邮件服务器端口 25,验证您的“SMTP”;和“smtp_port”在 php.ini 中设置或在第 69 行的 C:\wamp\www\Villa d El-lita\contactus.php 中使用 ini_set()
  • 此邮件功能仅适用于实时服务器,不适用于本地主机。
  • 使用上述表单中的值提交表单。您不会收到未定义的索引错误
  • 哦,我明白了,谢谢你的帮助:)
【解决方案2】:

在您的“contactus.php”文件中添加以下代码。并将“your@email.com”替换为您的电子邮件地址。请将“contactus.php”放在放置表单文件的同一目录中。

<?php
function clean($data)
{
    $data = trim($data);
    $data = stripslashes($data);
    $data = htmlspecialchars($data);
    return $data;
}
if(isset($_POST['name'],$_POST['email'],$_POST['message']) && $_POST['name'] != '' && $_POST['email'] != '' && $_POST['message'] != '') {
    foreach($_POST as $key = > $value)
        $_POST[$key] = clean($value);

    $to = 'your@email.com';
    $from = $_POST['email'];
    $subject = 'Customer support needed';
    $message = 'Name='.$_POST['name'].'  Message='.$_POST['message']; 


    // Sending email
    if(mail($to, $subject, $message)){
        echo 'Your mail has been sent successfully.';
    } else{
        echo 'Unable to send email. Please try again.';
    }
}
?>

【讨论】:

  • 警告:mail():无法连接到“localhost”的邮件服务器端口 25,验证您的“SMTP”;和“smtp_port”在 php.ini 中设置或在第 83 行的 C:\wamp\www\Villa d El-lita\contactus.php 中使用 ini_set()
  • 我认为代码有效,我只需要弄清楚如何修复此错误
  • 是的,这是工作代码。您只需要查看您的服务器配置。如果完成,请接受此答案。
猜你喜欢
  • 2012-07-02
  • 2018-03-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-02-11
  • 2012-01-04
相关资源
最近更新 更多