2014-03-27 4 views
-2

아무도 도와 줄 수 없습니까? 나는이 코드를 가지고 왜 이러한 에러가 발생하는지 모른다.

<form action="?" method="post">을하지만 작동하지 않습니다

"Undefined index name, email and message" 

나는 형태의 액션을 추가하려고했습니다.

<?php 
$to = '[email protected]'; 
$subject = 'From Site'; 

$name = $_POST['name']; 
$email = $_POST['email']; 
$message = $_POST['message']; 
$header = '$email'; 

if ($_POST) { 
    mail($to, $subject, $message, $header); 
} 
?> 

<html> 
    <fieldset> 
     <legend>Contactat US</legend> 
     <form method="post"> 
      <label for="name">Name:</label><br> 
      <input type="text" name="name" id="name" /><br> 
      <label for="email">E-mail:</label><br> 
      <input type="text" name="email" id="email" /><br>    
      <label for="message">Message:</label><br> 
      <textarea id="message" name="message" id="message" cols="42" rows="9"></textarea><br><br> 
      <input type="submit" value="Send" />     
     </form> 
    </fieldset> 
</html> 
+0

* 양식을 제출할 때까지 * _POST는 존재하지 않습니다. 존재하기 전에 사용하려고합니다. –

+1

@JohnConde $ _POST는 항상 존재합니다. 하지만 찾고 계신 값은 존재하지 않으실 것입니다. – TheMohanAhuja

답변

2
if(isset($_POST['email'])){ 
    $to = '[email protected]'; 
    $subject = 'From Site'; 

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

    $header = '$email'; 

    mail($to, $subject, $message, $header); 
} 
+0

대단히 감사합니다. –

0

은 다음과 교체 : 직접 게시물 배열을 참조하는 경우, 당신은 어려움이있을 수

if(isset($_POST['email'])){ 
     $to = '[email protected]'; 
     $subject = 'From Site'; 

     $name = filter_input(INPUT_POST, 'name'); 
     $email = filter_input(INPUT_POST, 'email'); 
     $message = filter_input(INPUT_POST, 'message'); 

     $header = '$email'; 

     mail($to, $subject, $message, $header); 
    } 

. 그리고 일부 편집자에게는 경고가 표시됩니다. (예 : Netbeans IDE)