2016-09-10 4 views
0

좋아요.이 양식을 작성 했으므로 내 이메일로 이동하도록 설정되어 있습니다. 양식이 전송되지만 전자 메일의 하단 두 필드 만 표시합니다. 아래 코드에서 볼 수 있듯이 5 개의 필드가 있습니다. 모든 분야의 정보를 어디에서 어떻게 recvieve 할 수 있습니까?특정 양식이 전자 메일 본문에 포함되어 있지 않습니다.

HTML :

<form id="ajax-contact" method="post" action="../js/mailer.php"> 

        <div class="field">           
         <select id="select" name="interest" title="Interested in ..." class="selectpicker"> 
          <option value="NA">Interested in...</option> 
          <option value="Website">Website</option> 
          <option value="Web Design"> Only Web Design</option> 
          <option value="Brand Consulting">Brand Consulting</option> 
         </select> 
        </div> 

        <div class="field"> 
         <input name="name" placeholder="Name:" type="text" id="name" required> 
        </div> 

        <div class="field"> 
         <input name="email" placeholder="Email: " type="email" id="email"required> 
        </div> 
    <div class="field"> 
        <div class="wrapper"> 
         <label><p>Budget:</p></label> 
         <div id="radio" class="toggle_radio"> 
         <input value="$4k" type="radio" class="toggle_option" id="first_toggle" name="budget"> 
         <input value="$5k - $9k" type="radio" checked class="toggle_option" id="second_toggle" name="budget"> 
         <input value="$10k+" type="radio" class="toggle_option" id="third_toggle" name="budget"> 

         <label for="first_toggle"><p>>$4k</p></label> 
         <label for="second_toggle"><p>$5k - $9k</p></label> 
         <label for="third_toggle"><p>$10k+</p></label> 
         <div class="toggle_option_slider"> 
         </div> 
         </div> 
        </div> 
    </div> 

<div class="field"> 
      <textarea placeholder="project description(optional)" id="message" name="message" required></textarea> 
</div> 

<div class="field"> 
    <button id="button" type="submit">SEND REQUEST</button> 
</div> 
</form> 

PHP :

<?php 
// My modifications to mailer script from: 
// http://blog.teamtreehouse.com/create-ajax-contact-form 
// Added input sanitizing to prevent injection 

// Only process POST reqeusts. 
if ($_SERVER["REQUEST_METHOD"] == "POST") { 
    // Get the form fields and remove whitespace. 
    $option = $_POST['interest']; 
    $name = $_POST['name']; 
    $email = $_POST['email']; 
    $rdb_value = $_POST['budget']; 
    $message = trim($_POST["message"]); 

    // Check that data was sent to the mailer. 
    if (empty($name) OR empty($message) OR !filter_var($email, FILTER_VALIDATE_EMAIL)) { 
     // Set a 400 (bad request) response code and exit. 
     http_response_code(400); 
     echo "Oops! There was a problem with your submission. Please complete the form and try again."; 
     exit; 
    } 

    // Set the recipient email address. 
    // FIXME: Update this to your desired email address. 
    $recipient = "EMAIL GOES HERE"; 

    // Set the email subject. 
    $subject = "New Request from: $name"; 

    // Build the email content. 
    $email_content = "Interested in: $option\n"; 
    $email_content = "Name: $name\n"; 
    $email_content .= "Email: $email\n\n"; 
    $email_content = "Budget: $rdb_value\n"; 
    $email_content .= "Message:\n$message\n"; 

    // Build the email headers. 
    $email_headers = "From: $name <$email>"; 

    // Send the email. 
    if (mail($recipient, $subject, $email_content, $email_headers)) { 
     // Set a 200 (okay) response code. 
     http_response_code(200); 
     echo "Thank You! Your message has been sent."; 
    } else { 
     // Set a 500 (internal server error) response code. 
     http_response_code(500); 
     echo "Oops! Something went wrong and we couldn't send your message."; 
    } 

} else { 
    // Not a POST request, set a 403 (forbidden) response code. 
    http_response_code(403); 
    echo "There was a problem with your submission, please try again."; 
} 

?> 

답변

2

여기에 누락을 병합/점을 볼 수 있습니까?

// Build the email content. 
$email_content = "Interested in: $option\n"; 
$email_content = "Name: $name\n"; 
      ^there 
$email_content .= "Email: $email\n\n"; 
$email_content = "Budget: $rdb_value\n"; 
      ^and there 
$email_content .= "Message:\n$message\n"; 

"체인 연결"이 파손되었습니다.

것은 그들을 추가

... 일한
// Build the email content. 
$email_content = "Interested in: $option\n"; 
$email_content .= "Name: $name\n"; 
$email_content .= "Email: $email\n\n"; 
$email_content .= "Budget: $rdb_value\n"; 
$email_content .= "Message:\n$message\n"; 
+0

!!!! 정말 고맙습니다!!!!! 나는 당신의 표를 올렸지 만 공개적으로 바꿀만큼 좋지는 않습니다. – ethanfox27

+0

@ ethanfox27 여러분을 환영합니다. 나는 당신이 지금 (어쨌든 덕분에) upvote 할 수 없다는 것을 알고있다. 그러나 해결 된 질문을 표시하는 대답을 받아 들일 수있다 ;-) –

+0

@ ethanfox27 다음은 http://meta.stackexchange.com/questions/5234이다./답장 받기 - 어떻게 대답 하느냐에 따라 여기로 돌아와 똑같은 일을하십시오. 공식적으로 귀하의 질문은 해결 된 것으로 표시됩니다. –

관련 문제