如何使用PHP设置电子邮件表单?

时间:2014-03-25 13:28:19

标签: php forms email contact-form mailto

我正在尝试使用php创建一个简单的电子邮件表单,但在对其进行样式化后,它不起作用。我想修复我已有的表单,而不是使用其他人编写的丑陋模板。如何进行此设置,以便管理员电子邮件接收填写在名称,电子邮件和消息字段中的内容的通知。任何帮助是极大的赞赏!这是html:

<form id="contact-form" class="contact-form" action="contact.php">
  <p class="contact-name">
  <input id="contact_name" type="text" placeholder="Full Name" value="" name="name" />
  </p>

  <p class="contact-email">
<input id="contact_email" type="text" placeholder="Email Address" value="" name="email" />
  </p>
            <p class="contact-message">
                <textarea id="contact_message" placeholder="Your Message"     name="message" rows="15" cols="40"></textarea>
            </p>
            <p class="contact-submit">
                <a id="contact-submit" class="submit" href="mailto:email@example.com">Send Your Email</a>
            </p>

            <div id="response">

            </div>
        </form>

这里是php:

$admin_email = 'email@example.com';

class Contact_Form{
function __construct($details, $email_admin, $message_min_length){

    $this->name = stripslashes($details['name']);
    $this->email = trim($details['email']);
    $this->subject = 'Contact from'; // Subject 
    $this->message = stripslashes($details['message']);

    $this->email_admin = $email_admin;
    $this->message_min_length = $message_min_length;

    $this->response_status = 1;
    $this->response_html = '';
}

验证码然后......

    private function sendEmail(){
    $mail = mail($this->email_admin, $this->subject, $this->message,
         "From: ".$this->name." <".$this->email.">\r\n"
        ."Reply-To: ".$this->email."\r\n"
    ."X-Mailer: PHP/" . phpversion());

    if($mail)
    {
        $this->response_status = 1;
        $this->response_html = '<p>Thank You!</p>';
    }
}


function sendRequest(){
    $this->validateFields();
    if($this->response_status)
    {
        $this->sendEmail();
    }

    $response = array();
    $response['status'] = $this->response_status;   
    $response['html'] = $this->response_html;

    echo json_encode($response);
}

0 个答案:

没有答案