2011-02-07 11 views
0

私はテンプレートをオンラインにしています...彼らはこのcontact.phpを含んでいました - そして、このcontact.phpが私にそれを送るように余分なフィールドを追加するにはどうすればいいですか?フィールドをcontact.phpに追加します

<?php 

if(!$_POST) exit; 

$email = $_POST['email']; 


//$error[] = preg_match('/\b[A-Z0-9._%-][email protected][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 = "[email protected]"; 
    $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> 

そして、まだ動作しません.....

答えて

0

あなたは正しい、あなたが連絡先メールもあなたに送ることにしたいわけ?もしそうなら、次のコードを試してください。 mailは、このトリックを行ったphpメール機能です。詳細についてはMANUALをご覧ください。

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

//$error[] = preg_match('/\b[A-Z0-9._%-][email protected][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 = "[email protected]"; 
    $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 = "[email protected]";//put your email address here 

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

これはフォーム自体ではなく、フォームプロセッサです。おそらくフォームのどこかにHTMLファイルがあり、このcontact.phpファイルに投稿します。

とにかく、フォーム内で要求しているフィールドの数と、$ values配列の項目数(正しい名前)を一致させる必要があるようです。 $ required配列に特定のものを必要とするように見えます。

あなたのメールアドレスに$ your_emailを変更してください。

フォームからメールを受け取る必要があります。

これはあなたの質問にお答えしますか?それはひどく具体的ではなかった。

+0

おかげで...私は編集を行なったし、私は電子メールを介してこれを取得するだけです: – SCB

0

にそれを送信する必要があり

$your_email = "<[email protected]>, Another User <[email protected]>";

は修正がある:これはここにあなたの

$your_email = "[email protected]";

に行くことは例です:

$ required = array( 'name'、 'email'、 'telephone'、 'message');

そして、それは動作します... 100% - 私は転載すべて...

関連する問題