2017-11-15 15 views
1

죄송 합니다만,이 질문은 이미이 사이트에서 이미 확인되었습니다. 그러나 다른 사람들이 제안한 바를 구현하려고했지만 행운이 없었습니다.문의 양식 - '알 수 없음'으로 통하는 사용자 이름 및 전자 메일

다른 사람들과 마찬가지로 나는 매우 간단한 문의 양식을 가지고 있으며,이 예제를 위해 PHP 코드를 최소한으로 제거하여 보았을 때 더 간단합니다.

GMail에서 메시지를 받는다는 의미에서 제대로 작동하지만 사용자가 입력 한 전자 메일과 이름은 절대로 표시되지 않습니다. 내가 밖으로 '\ r에'를 복용하고 그냥 \ n은

  • 다른 방법을 \ '떠나 시도

    • 이 중 정크 것 이메일 또는 (알 수없는 통해 오는) 같은 결과있다.

      <form action="contact.php" method="post"> 
               <div class="row"> 
                <div class="col-md-6"> 
                 <div class="form-group"> 
                  <label for="email">Email address</label> 
                  <input type="email" class="form-control" id="email" placeholder="Enter email"> 
                 </div> 
                </div> 
                <div class="col-md-6"> 
                 <div class="form-group"> 
                  <label for="name">Name</label> 
                  <input type="text" class="form-control" id="name" placeholder="Name"> 
                 </div> 
                </div> 
               </div> 
               <div class="form-group"> 
                <label for="message">Message</label> 
                <textarea name="message" id="message" class="form-control" rows="3"></textarea> 
               </div> 
               <button type="submit" class="btn tf-btn btn-default">Submit</button> 
              </form> 
      

    PHP 코드

    <?php 
    
    $to = '[email protected]'; 
    $name = $_POST['name']; 
    $email = $_POST['email']; 
    $message = $_POST['message']; 
    $subject = 'RE: RMW interest'; 
    
    $headers .= 'From:' .$name. " ".'<'.$email.'>'."\r\n"; 
    $headers .= 'Reply-To: ' . $email . "\r\n"; 
    
    mail($to, $subject, $message, $headers); 
    
    echo "Thank you for contacting us, we will respond shortly!"; 
    
    ?> 
    

    사람이 특정 사건에 대한 몇 가지 빛을하시기 바랍니다 흘릴 수 있다면 가장 감사하게 될 것입니다. 당신이 contact.php 파일에 print_r()를 호출 할 때, 입력의 이름을 잊었

    많은 감사

  • +0

    if(isset($_POST['submit'])){ //your code here } 

    희망이 도움이? –

    +0

    죄송합니다. PHP 코드를 너무 많이 삭제했습니다. 코드를 편집했습니다. – Jeoul

    답변

    2

    하지 PHP에서 HTML 코드의 문제는, 그래서 당신은 단지 메시지를 발견 할 것이다. contact.php에서

    당신은 당신이 모든 입력 이름을 지정할 수 있도록 출력이

    Array ([message] => message) 
    

    지금 문제를 알고있을 것입니다 print_r($_POST); 을 쓸 때.

    <input name="email" type="email" class="form-control" id="email" placeholder="Enter email"> 
    ... 
    <input name="name" type="text" class="form-control" id="name" placeholder="Name"> 
    ... 
    <button name="submit" type="submit" class="btn tf-btn btn-default">Submit</button> 
    

    그래서 출력은 지금

    Array ([email] => [email protected] [name] => test [message] => test message [submit] =>) 
    

    입니다 그리고 여기에 버튼을 눌러 메시지를 보내 클릭하면 확인할 수 있기 때문에 내가 버튼을 지명했다. 어디 당신이 표시 기대 - 당신은 당신의 코드에서 어디`$의 name`를 사용하지 않는

    +0

    답장을 보내 주셔서 감사합니다. – Jeoul

    +0

    당신은 환영합니다, 나는 당신의 다음 답장을 기다리고 있습니다 :) –

    +0

    많은 점을 인정하고, 그것은 매력처럼 작동했습니다 :). 또한 그것이 어디 잘못되었는지 설명해 주셔서 감사합니다, 나는 당신의 지혜의 말씀을 기억할 것입니다. 다시 감사합니다! – Jeoul