2011-12-27 132 views
3

在文本框中顯示動態文本我要顯示在HTML表單(文本字段)是來自DB的文本,所以我用下面的代碼逃逸單引號和雙引號,而使用PHP

.... 
..... 
<input type="text" name="txtqname" id="txtqname" value="<?=$myvar ?>"></input> 
.... 
..... 

這裏MYVAR $是變量,其值來自表單數據庫,可能包含單引號或雙引號。正因爲如此,我的文本沒有正確顯示在文本字段中,因爲我想要的。我試圖用單個替換雙引號作爲

.... 
..... 
<input type='text' name='txtqname' id='txtqname' value='<?=$myvar ?>'></input> 
.... 
..... 

但仍然沒有得到正確的文本。請幫幫我。

在此先感謝...

+0

'htmlspecialchars'是你的朋友 – k102 2011-12-27 09:35:25

回答

7

簡單,所有你需要做的是:

<input type="text" name="txtqname" id="txtqname" value="<?= htmlspecialchars($myvar) ?>"></input> 
+0

'htmlspecialchars'是一個有用的功能,感謝分享。 +1爲您的答案 – 2015-04-20 09:56:01

0

您應該使用合適的addslashes()和用於格式化數據的stripslashes()。 確保每個數據在插入數據庫之前都已正確格式化。也可以嘗試這個mysql_real_escape_string()

0

可以使用ヶ輛函數ENT_QUOTES,

例如:ヶ輛($ MYVAR,ENT_QUOTES);

ENT_QUOTES將轉換雙引號和單引號。