2011-07-07 56 views
0

我試圖使用W3C驗證系統驗證和我得到一個錯誤:更換爲與&

Line 59, Column 47: character "&" is the first character of a delimiter but occurred as data

我知道爲什麼原因:

You used an unescaped ampersand "&": this may be valid in some contexts, but it is recommended to use "&amp", which is always safe.

在表單中,我進入像這樣

SONY & BMG MUSIC ENTERTAINMENT

如果我在phpadmin去,在餐桌上,我可以看到正確的數據

SONY & BMG MUSIC ENTERTAINMENT

這是否意味着我必須使用「&放大器」,它進入...這太瘋狂了,如果我有一個文本......我一定要每天更換爲&「&放」

我相信有更好的方法來做到這一點..任何提示或想法?

謝謝

+0

你是如何使用這些數據的? 59號線是什麼? – Neal

回答

3

您應該只在HTML中使用它時轉義您的HTML數據。當您輸出數據時,使用htmlspecialchars()。例如:

$title="SONY & BMG MUSIC ENTERTAINMENT"; 
echo htmlspecialchars($title); 

這是離開平原的數據在數據庫中,你可能想用它在一個完全不同的上下文中的其他未來一些最佳實踐。也就是說,在插入數據庫之前,不要逃避數據。只有在輸出時才擔心。