2011-09-14 49 views
-1

可能重複:
show html code inside box like yahoo html messages保護我的HTML DIV

第一,我是版主..我取得了這個問題yeasterday並沒有得到迴應,對不起!

我有html表單

允許用戶發佈他們的HTML代碼,然後我通過我的PHP顯示它

這裏是我的PHP代碼

<?php 

$html = '<div id="my_box" style="border:1px #000 solid">'; //my own div! 
$_POST['user_html'] = '</div><p>Any thing</p>'; //html code of visitor! , i want display it inside my own div above 
$html .= $_POST['user_html']; 
$html .= '</div>'; //close my own div! 
echo $html; 

?> 

,如果你嘗試這種代碼,你會找到用戶的html代碼顯示在我自己的div框外

因爲他的代碼是以</div> <開頭 - 他關閉了我的d四!

那麼,我如何解決它並顯示他的代碼而不會影響我自己的div?

我需要類似iframe的東西!

- 注1

上面的故事,只是爲了讓你明白..我沒瘋,使項目做這種愚蠢的工作!

- 注2

的PHP代碼是隻是舉例來讓你明白..我的項目是基於HTML我想通過Java的修復或HTML ..不是PHP


另一個例如

雅虎,Gmail的HTML郵件

它們顯示HTML郵件中他們的html箱

我累了搜索,,,

+1

請不要問同樣的問題兩次。編輯你的其他問題,使其更清晰。另請參閱http://meta.stackexchange.com/questions/7046/how-do-i-get-attention-for-my-old-unanswered-questions – CanSpice

回答

0

你需要逃避用戶輸入的內容。因此它被顯示爲</div><p>Any thing</p>並且不被解釋。

+0

我想要它的解釋! ..但不影響我的分區!請看我最後一個關於谷歌,Ymail的HTML郵件的說明..謝謝 –

0

你可能想使用htmlentities()功能:

$html = '<div id="my_box" style="border:1px #000 solid">'; //my own div! 
$_POST['user_html'] = '</div><p>Any thing</p>'; //html code of visitor! , i want display it inside my own div above 
$html .= htmlentities($_POST['user_html']); 
$html .= '</div>'; //close my own div! 
echo $html; 

編輯:其實,這隻會如果你想顯示原始的HTML工作。如果您希望將其呈現爲HTML,那麼您必須以某種方式使用iframe。對不起,我不知道你會如何做到這一點(嗯,我這樣做,但它很漫長,令人費解,其他人可能會幫助更好)。

+0

是的,我想顯示用戶的HTML影響,但不影響我的股份..像iframe ..我希望有人幫助我..謝謝你CanSpice –