我要来回讨论这个,所以我想我会在这里问。我希望有一种适用于所有输入字段(文本、选择、文本区域)的技术。
首先,我们使用 php 脚本处理用户输入。可能存在一些验证错误,因此可能需要使用用户输入的值重新显示表单。
htmlspecialchars($fieldValue, ENT_QUOTES)
在这里不起作用,因为如果出现验证错误并重新显示表单,则用户输入的所有引号都将转换为 \"。至少在文本区域中。成功验证表单后,我们需要将输入发送到数据库。列值需要是“安全的”,因此需要进行一些转换。我知道在从数据库中读取数据时,我可能也需要应用某种形式的转换,尽管我希望在这方面是错误的。
寻找不涉及太多代码的良好实践。
===
就像更新一样。在 Domino 形式中,没有任何形式的转义,也不需要特殊处理。Notes 只是自动完成它。在使用 JPA 的 Java 应用程序中,所有这些“安全性”也会自动处理。我知道 php 可能没有等价物,但这是一个常见的问题,我选择相信我错过了一些非常简单的解决方案。