Friday, August 25, 2017

[HTML][PHP] 解決 input 的 value 包含 單(雙)引號 時 會導致文字被截斷的問題 (使用 htmlspecialchars)

當 input 欄位的 value 包含 單(雙)引號 時,會導致文字被截斷,例如:

<?php
$val = '這是包含(")雙引號的內容';
?>
<input name="a" type="text" value="<?=$val?>">

這樣只會顯示出「這是包含(」後面就被截斷了,因為 value=" 的雙引號會跟內容中的雙引號成對,解決的方式很簡單...
<input name="a" type="text" value="<?=htmlspecialchars($val)?>">

No comments:

Post a Comment