<div class="media-container-column col-lg-8" data-form-type="formoid">
<form class="mbr-form" action="mail.php" method="post">
<div class="row row-sm-offset">
<div class="col-md-4 multi-horizontal" data-for="name">
<div class="form-group">
<label class="form-control-label mbr-fonts-style display-5" for="name-form1-x">이름</label>
<input type="text" class="form-control" name="name" data-form-field="Name" required="" placeholder="성함을 입력하십시오." id="name-form1-x">
</div>
</div>
<div class="col-md-4 multi-horizontal" data-for="email">
<div class="form-group">
<label class="form-control-label mbr-fonts-style display-5" for="email-form1-x">이메일</label>
<input type="email" class="form-control" name="email" data-form-field="Email" required="" placeholder="이메일주소를 입력하십시오." id="email-form1-x">
</div>
</div>
<div class="col-md-4 multi-horizontal" data-for="phone">
<div class="form-group">
<label class="form-control-label mbr-fonts-style display-5" for="phone-form1-x">전화번호</label>
<input type="tel" class="form-control" name="phone" data-form-field="Phone" placeholder="휴대폰번호를 입력하십시오." id="phone-form1-x">
</div>
</div>
</div>
<div class="form-group" data-for="message">
<label class="form-control-label mbr-fonts-style display-5" for="message-form1-x">문의 내용을 작성하여 주십시오.</label>
<textarea type="text" class="form-control" name="message" rows="7" data-form-field="Message" placeholder="상담내용을 입력하십시오." id="message-form1-x"></textarea>
</div>
<span class="input-group-btn"><button href="" type="submit" class="btn btn-primary btn-form display-5">상담신청</button></span>
</form>
</div>
mail.php는 아래와 같습니다.
<?php
if(isset($_POST['email'])) {
$email_to = "[email protected]";
$email_subject = "상담요청이 도착하였습니다.";
$email = $_POST['email'];
$name = $_POST['name'];
$phone = $_POST['phone'];
$message = $_POST['message'];
$email_message = "Message:\n\n";
function clean_string($string) {
$bad = array("content-type","bcc:","to:","cc:","href");
return str_replace($bad,"",$string);
}
function getUserIpAddr()
{
if (!empty($_SERVER['HTTP_CLIENT_IP']))
{
return $_SERVER['HTTP_CLIENT_IP'];
}
else if (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
{
return $_SERVER['HTTP_X_FORWARDED_FOR'];
}
else
{
return $_SERVER['REMOTE_ADDR'];
}
}
$email_message .= "IP address: ".getUserIpAddr()."\n";
$email_message .= "Name: ".clean_string($name)."\n";
$email_message .= "Email: ".clean_string($email)."\n";
$email_message .= "Phone: ".clean_string($phone)."\n";
$email_message .= "Message: ".clean_string($message)."\n";
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/plain;charset=UTF-8" . "\r\n";
$headers .= 'From: '.$email. "\r\n";
if (@mail($email_to, $email_subject, $email_message, $headers)) {
header('Location: success.html');
} else {
header('Location: error.html');
}
}
?>
한사이트는 정상적으로 success.html로 넘어가면서 메일이 오는데
똑같이 복사하여 만든 사이트는 error.html로만 넘어가며 메일이 오질 않습니다.
어떤 문제를 의심해봐야할까요? 똑같은 cafe24 웹호스팅입니다.
mail() 함수를 사용하여 웹호스팅 계정에서 메일을 발송하는 것은 원래 안 되는 게 정상이고, 되는 게 이상한 겁니다. 되는 쪽은 최근에 다른 고객이 스팸을 발송한 적이 없어서 그나마 받아줄 가능성이 높은데, 이것도 오래 안 가요.