2011-02-13 8 views
1

내 사이트에 아주 간단한 연락처 양식이 있습니다. 사용자가 "CC :"옆에 체크 표시를하여 해당 사이트를 완전히 새로운 필드를 만들지 않고 참조하도록 할 수 있습니다. 그들은 다시 채워야합니다. 여기 PHP 이메일 양식 CC

는 HTML입니다 :

<form action="send.php" method="post" name="form1"> 
Name: <input name="name" size="35"><br/> 
E-mail:<input name="email" size="35"><br/> 
CC: <input input type="checkbox" name="mailcc"><br/> 
Comment: <textarea cols="35" name="comment" rows="5"></textarea> <br /> 
<input name="Submit" type="submit" value="Submit"> 
</form> 

그리고 여기에 PHP입니다 :

<?php 
$name = $_REQUEST['name'] ; 
$email = $_REQUEST['email'] ; 
$comment = $_REQUEST['comment'] ; 

mail("[email protected]", "Message Title", "Name: $name\n Email: $email\n Comments: $comment\n "); 

echo "Message Sent! Thanks!" 

?> 

필자는이 사이트에서 일부 항목을 추가하는 노력 :

http://w3mentor.com/learn/php-mysql-tutorials/php-email/send-email-with-cccarbon-copy-bccblind-carbon-copy/

그러나 그것은 CC를위한 텍스트 필드를 만들고 싶습니다. 이것은 사용자가 en을해야한다는 것을 의미합니다. 그들의 이메일을 두 번.

필자도 $mailheader.= "Cc: " . $email ."\n";을 시도했지만 어느 것도 작동하지 않습니다.

답변

2
  1. 확인란에 HTML의 값 (value="1")이 표시되도록합니다.
  2. 마지막 매개 변수로 mail() 함수 끝에 변수 ($mailheader)를 추가하십시오.

그래서 본질적 :

$name = $_POST['name'] ; 
$email = $_POST['email'] ; 
$comment = $_POST['comment'] ; 

if ($_POST['mailcc'] == 1) { 
    $mailheader .= "CC: $name <$email>"; 
} 

mail("[email protected]", "Message Title", "Name: $name\n Email: $email\n Comments: $comment\n ", $mailheader); 

echo "Message Sent! Thanks!"; 
+0

당신이 바위! 감사! –

0

은 ([email protected] 귀하의 예제에서) 당신이 "에서"주소와 같은으로 테스트중인 참조 주소인가?

나는 빠른 테스트를했고, 난 단 하나의 메일 받기 코드 :

<?php 
$to = "[email protected]"; 
$subject = "Testing"; 
$message = "Testing message"; 
$headers = "Cc: [email protected]"; 

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

그러나이와 난 내 다른 이메일 계정에 사본을 얻을 :

<?php 
$to = "[email protected]"; 
$subject = "Testing"; 
$message = "Testing message"; 
$headers = "Cc: [email protected]"; 

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

'TO'와 'CC'또는 'BCC'필드가 달라야하며, 동일한 내용을받은 편지함으로 두 번 보내지 않습니다. 그러나 Josh가 요구 한 것은 양식 주인의 전자 메일 주소 인 'me @ me.com'이 아닌 '$ email'에 메일을 CC'ing하는 것입니다. 그래서 그들은 다른 전자 메일 주소입니다. –

+0

네, 그 뒤에는 [email protected]을 사용하여 양식을 테스트했을 수도 있습니다. 그러면 수신기와 CC는 동일한 주소 였을 것입니다. 그러나 그것은 분명히 사실이 아니었다. –