[英]save html-formatted text to database
我想將 html 格式的文本保存到數據庫中,但是當我這樣做時,它不保存 html 符號,如 </ > ' 和其他這是我從數據庫中讀取文章進行編輯的方式:
<p class="Title">Англійський варіант:</p>
<textarea name="EN" cols="90" rows="20" value="<?php echo htmlentities($articleArr['EN'], ENT_QUOTES, "UTF-8"); ?>" ></textarea>
在生成這樣的 html 代碼之后:
<p class="Title">Англійський варіант:</p>
<textarea name="EN" cols="90" rows="20" value="<p class='Title'> привыт </p>" ></textarea>
所以,我希望這個文本會出現在我的文本字段中,在這個頁面的 html 代碼中是,但在文本區域中不是。
在數據庫中,我將其另存為:
<p class="Title"> Hello </p>
那么我該如何執行以下操作:
請幫幫我,我怎樣才能正確保存這些文本,謝謝!
嘗試在字符串上使用htmlspecialchars()
放入數據庫,然后在將其拉出時使用htmlspecialchars_decode()
。 可能會有所作為。
將其保存到 nvarchar(max) 字段。
確保使用參數化查詢來確保安全。 閱讀
http://www.aspnet101.com/2007/03/parameterized-queries-in-asp-net/
http://msdn.microsoft.com/msdnmag/issues/04/09/SQLInjection/
對 Sql 稍加改動,您就可以申請到 Mysql aslo
將您的 html 代碼保存在數據庫中沒有問題。 並且在保存之前不需要過濾數據。 但是當你想在textarea
再次顯示它時,你應該Escape
它。
在 php 中,您可以使用此代碼來轉義 html 代碼:
PHP函數
請參閱文檔: htmlspecialchars
$cotnent = htmlspecialchars( $cotnent );
WordPress 功能:
見文檔: format_to_edit
$cotnent = format_to_edit( $cotnent , false );
或
參見文檔: esc_textarea
$cotnent = esc_textarea( $cotnent );
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.