我有一个网络表单,它接受有关一本书的信息(书名、作者、描述等)。我一直在使用 CodeIgniter 的事件记录数据库类来插入信息,并且 not 转义了查询,因为 CodeIgniter 文档声称已经这样做了(参见 here )。
那么问题来了:如果我输入的标题如“A Boy's Guide To The World”中有一个撇号,它会被转义并正确插入到数据库中。但是,当我以如下形式显示它时:
<input type="text" name="title" <?php if (isset($book)) { echo "value='" . $book->name . "' "; ?> />
它只会显示“A Boy”作为标题。我理解为什么撇号会损坏,并且可以想出很多方法来解决它,但是处理这种情况的最正确方法是什么?
一如既往,非常感谢您的时间和知识!
最佳答案
您应该可以使用 html_escape()
CodeIgniter 函数:
它基本上只是 htmlspecialchars PHP 函数的快捷方式。
关于php - 使用 CodeIgniter 在表单中转义和显示字符串的正确方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16652244/