добавить поля в contact.php - PullRequest
       5

добавить поля в contact.php

0 голосов
/ 07 февраля 2011

Я получил шаблон онлайн ... Они включили этот contact.php - И как мне добавить дополнительные поля, чтобы этот contact.php отправил его мне.

<?php

if(!$_POST) exit;

$email = $_POST['email'];


//$error[] = preg_match('/\b[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b/i', $_POST['email']) ? '' : 'INVALID EMAIL ADDRESS';
if(!eregi("^[a-z0-9]+([_\\.-][a-z0-9]+)*" ."@"."([a-z0-9]+([\.-][a-z0-9]+)*)+"."\\.[a-z]{2,}"."$",$email )){
    $error.="Invalid email address entered";
    $errors=1;
}
if($errors==1) echo $error;
else{
    $values = array ('name','email','message');
    $required = array('name','email','message');

    $your_email = "myemail@live.ca";
    $email_subject = "New Message: ".$_POST['subject'];
    $email_content = "new message:\n";

    foreach($values as $key => $value){
      if(in_array($value,$required)){
        if ($key != 'subject' && $key != 'company') { if( empty($_POST[$value]) ) { echo 'PLEASE FILL IN REQUIRED FIELDS'; exit; }
        }
        $email_content .= $value.': '.$_POST[$value]."\n";
      }
    }

    if(@mail($your_email,$email_subject,$email_content)) {
        echo 'Message sent!'; 
    } else {
        echo 'ERROR!';
    }
}
?>

Страница HTML-контакта:

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link href="style.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript">
// <![CDATA[
jQuery(document).ready(function(){
    $('#contactform').submit(function(){                  
        var action = $(this).attr('action');
        $.post(action, { 
            name: $('#name').val(),
            email: $('#email').val(),
            telephone: $('#telephone').val(),
            company: $('#company').val(),
            subject: $('#subject').val(),
            message: $('#message').val()
        },
            function(data){
                $('#contactform #submit').attr('disabled','');
                $('.response').remove();
                $('#contactform').before('<p class="response">'+data+'</p>');
                $('.response').slideDown();
                if(data=='Message sent!') $('#contactform').slideUp();
            }
        ); 
        return false;
    });
});
// ]]>
</script>
</head>
<body>
<div class="main">
  <div class="blok_header">
    <div class="header">
      <div class="search">
      </div>
      <div class="clr"></div>
      <div class="withe_bg">
        <div class="logo"></div>
        <div class="menu">        </div>
        <div class="clr"></div>
        <div class="body">
        <h3>&nbsp;</h3>
        <p>&nbsp;</p>

        <div class="left">
          <h2>Send us a Message:</h2>
          <p>Please use this convenient form to your send your message, and we will get back to you shortly.</p>
          <form action="contact.php" method="post" id="contactform">
            <ol>
              <li>
                <label for="name">Name <span class="red">*</span></label>
                <input id="name" name="name" class="text" />
              </li>
              <li>
                <label for="telephone">Telephone <span class="red"></span></label>
                <input id="telephone" name="telephone" class="text" />
              </li>
              <li>              
                <label for="email">Your email <span class="red">*</span></label>
                <input id="email" name="email" class="text" />
              </li>
              <li>
                <label for="company">Company</label>
                <input id="company" name="company" class="text" />
              </li>
              <li>
                <label for="subject">Subject</label>
                <input id="subject" name="subject" class="text" />
              </li>
              <li>
                <label for="message">Message <span class="red">*</span></label>
                <textarea id="message" name="message" rows="6" cols="50"></textarea>
              </li>
              <li class="buttons">
                <input type="image" name="imageField" id="imageField" src="images/send.gif" class="send" />
                <div class="clr"></div>
              </li>
          </ol>
        </form>
        </div>
        <div class="right last">

           <p>&nbsp;</p>
           <p>
           </p>

           </div>

          <div class="clr"></div>
        </div>
        <div class="clr"></div>
      </div>
      <div class="clr"></div>
    </div>
  </div>
  <div class="clr"></div>
</div>
<div class="FBG">
  <div class="FBG_resize">
  <div class="clr"></div>
      </div>
      <div class="clr"></div>
    </div>
  </div>
  <div class="clr"></div>
</div>
<div class="FBG">
  <div class="FBG_resize">
    <div class="clr"></div>
  </div>
  <div class="clr"></div>
</div>
<div class="footer">
  <div class="footer_resize">
    <p class="leftt">&nbsp;</p>
    <div class="clr"></div>
  </div>
  <div class="clr"></div>
</div>
</body>
</html>

И все равно не работает .....

Ответы [ 4 ]

0 голосов
/ 07 февраля 2011

Исправление:

изменить массив: $ required = (имя, электронная почта, телефон, сообщение)

И это работает ... 100% - спасибо всем ...

0 голосов
/ 07 февраля 2011

это не сама форма, это процессор форм. у вас, вероятно, где-то есть HTML-файл с формой, публикуемый в этом файле contact.php.

в любом случае, похоже, что вы должны сопоставить количество полей, которые вы запрашиваете в форме, с количеством элементов (с правильными именами) в массиве $ values. Выглядит так, как будто вы можете требовать определенные значения в массиве $ required.

измените $ your_email на ваш адрес электронной почты.

Вы должны получить электронные письма через форму.

это отвечает на ваш вопрос? Это не было особенно специфично.

0 голосов
/ 07 февраля 2011

Если вы хотите, чтобы он отправлялся по электронной почте нескольким людям, вам следует взглянуть на раздел параметров (раздел Кому) здесь .Это будет в вашем

$your_email = "myemail@live.ca";

Вот пример:

$your_email = "<user@example.com>, Another User <anotheruser@example.com>";

Это должно отправить его на user@example.comanotheruser@example.com

0 голосов
/ 07 февраля 2011

Вы имеете в виду, что хотите, чтобы вам также было отправлено контактное письмо, верно? Если это так, попробуйте следующий код. mail - это функция php mail, которая добилась цели. Для получения дополнительной информации вы можете проверить РУКОВОДСТВО .

<?php
$email = $_POST['email'];

//$error[] = preg_match('/\b[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b/i', $_POST['email']) ? '' : 'INVALID EMAIL ADDRESS';
if(!eregi("^[a-z0-9]+([_\\.-][a-z0-9]+)*" ."@"."([a-z0-9]+([\.-][a-z0-9]+)*)+"."\\.[a-z]{2,}"."$",$email )){
    $error.="Invalid email address entered";
    $errors=1;
}
if($errors==1) echo $error;
else{
    $values = array ('name','email','message');
    $required = array('name','email','message');

    $your_email = "seanbridge@live.ca";
    $email_subject = "New Message: ".$_POST['subject'];
    $email_content = "new message:\n";

    foreach($values as $key => $value){
      if(in_array($value,$required)){
        if ($key != 'subject' && $key != 'company') { if( empty($_POST[$value]) ) { echo 'PLEASE FILL IN REQUIRED FIELDS'; exit; }
        }
        $email_content .= $value.': '.$_POST[$value]."\n";
      }
    }

    if(@mail($your_email,$email_subject,$email_content)) {
        echo 'Message sent!'; 
    } else {
        echo 'ERROR!';
    }

    $myEmail = "myemai@your.com";//put your email address here

    if(@mail($myEmail,$email_subject,$email_content)) {
        echo 'Message sent!'; 
    } else {
        echo 'ERROR!';
    }
}
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...