2016-04-18 115 views
0

PHP從來不是我最強烈的觀點,但我正在努力學習。我在EOD標記下面的代碼中遇到了一些問題。第18 - 23行是精確的。我想這可能是一個小格式錯誤。但由於我對PHP的經驗不足,我可能是錯的。EOD標記中的未定義變量

<?php 
 

 
/* subject & account */ 
 

 
    $emailSub = 'Form Actioned'; 
 
    $emailAcc = '[email protected]'; 
 

 
/* data collection */ 
 

 
    $fnameField = $_POST ['fname']; 
 
    $lnameField = $_POST ['lname']; 
 
    $titleField = $_POST ['title']; 
 
    $emailField = $_POST ['email']; 
 

 
    $body = <<<EOD 
 
<br><hr><br> 
 
First Name: $fname <br> 
 
Last Name: $lname <br> // <<-- This line is the one I'm suspicious of. 
 
Company & Title: $title <br> 
 
Email: $email <br> 
 
EOD; 
 

 
    $headers = "From: $email\r\n"; 
 
    $headers .= "Content-type: text/html\r\n"; 
 
    $success = mail($emailAcc, $emailSub, $body, $headers); 
 

 
/* result rendered as html */ 
 
    $result = <<<EOD 
 

 
Success 
 

 
EOD; 
 
echo "$result";

任何人都可以看到的EOD標記代碼的重大問題?我有三重檢查了我的HTML元素的名稱,並與PHP精確匹配,但仍然沒有任何喜悅。

任何幫助,非常感謝。

+2

_ $ fname_和其他變量應該是像_ $ fnameField_內_ $ body_ – C2486

+0

我這樣一個白癡。謝謝。 – Beaniie

回答

2

試試這個:

/* subject & account */ 

    $emailSub = 'Form Actioned'; 
    $emailAcc = '[email protected]'; 

/* data collection */ 

    $fnameField = $_POST ['fname']; 
    $lnameField = $_POST ['lname']; 
    $titleField = $_POST ['title']; 
    $emailField = $_POST ['email']; 

    $body = <<<EOD 
<br><hr><br> 
First Name: $fnameField <br> 
Last Name: $lnameField <br> // <<-- This line is the one I'm suspicious of. 
Company & Title: $titleField <br> 
Email: $emailField <br> 
EOD; 

    $headers = "From: $emailField \r\n"; 
    $headers .= "Content-type: text/html\r\n"; 
    $success = mail($emailAcc, $emailSub, $body, $headers); 

/* result rendered as html */ 
    $result = <<<EOD 

Success 

EOD; 
echo "$result"; 
+0

謝謝。我有時候可以成爲一個完整的白癡....:P – Beaniie