2011-10-01 60 views
0

我想我有一個語法錯誤,但我不能發現它,任何想法?嵌入HTML在PHP錯誤

if($infozz['count'] <= $infozz['limit']) 
{ 
mail($infozz['email'], "Your incident report copy!", $bodyz); 

echo <<<EOT 
<html> 

<head> 

<title> Summary Report </title> 
<link rel="stylesheet" href="http://web.njit.edu/~swp5/assignment/style/style3.css"> 
</head> 

<body> 

<div class="header"> 
Summary Report 

</div> 

<div class="mess"> 

Type of incident: {$infoz['type']}<br><br> 

Date upon entry: {$infoz['date']}<br><br> 

Time upon entry: {$infoz['time']}<br><br> 

Your account name: {$infoz['reporter']}<br><br> 

Your incident ID number: {$infoz['ID']}<br><br> 

Your description of the incident: {$infoz['desc']}<br><br> 

An email has been sent to your account<br> 


</div> 

</body> 
</html> 

EOT; 

} 
+0

什麼是語法錯誤消息? –

+0

你會得到什麼樣的錯誤,讓你認爲這是這些行中的語法錯誤? –

+1

這裏沒有什麼突出的東西,但要確保你沒有任何東西,包括EOT之前或之後的行中的空格; –

回答

2

您不能在HEREDOC語句關閉之前或之後有任何空格。請確保您的線路前後沒有空格:

EOT; 
0

不要回顯出html。

PHP和HTML應該看起來像這樣。

<? 
    if ($something == true) { 
?> 
    <p>HTML Goes here</p> 
<? 
    } 
?> 
+0

不能不同意。 OP中使用的HEREDOC語法是將PHP變量嵌入到HTML中的完美有效方法。比你的例子更清潔。 –

+0

我受不了那種方法。如果你想打印一個var out <?= $ something; ?> – Caimen

+0

您的偏好沒有理由回答OP是做錯了。 –

0

您沒有關閉您的{}的If語句。還要提供一個其他的別的語句,如果語句與您的HTML之間的語句

+0

if語句'}'在最後一行的heredoc'EOT;'之後關閉。 –

+0

您需要在該字符串周圍加引號,而不是將其作爲原始字符串處理。 – comu

+0

結束括號在代碼塊的末尾。 – Nightfirecat