我正在使用PHP存储一些会话变量来跟踪用户输入搜索表单的内容,然后我们可以在需要再次开始搜索时恢复这些变量。这一切都运作良好,除了以下内容。
允许用户用双引号包装搜索字符串,这将在该字段上执行不同类型的搜索(完全匹配)。如果用户在文本搜索字段之一中输入这样的文本:
“心脏病”
seach工作,并且值保留在PHP会话变量中,但是当我们再次进行搜索时恢复它时,它会失败。这是恢复文本输入的代码:
<input type="text" id="condition" name="condition" value="<?php echo $conditionSearchValue; ?>">
我收集双引号会导致问题,因为这将是:
<input type="text" id="condition" name="condition" value=""heart condition"">
有没有办法使用我不知道的双引号来恢复输入?
由于
答案 0 :(得分:1)
<input type="text" id="condition" name="condition" value="<?php print htmlentities($conditionSearchValue, ENT_QUOTES); ?>">
文档here中有关htmlentities
的更多信息。