如何让用户在文本字段中使用'''(双引号)...
每当我在字段中使用双引号(值)时,在我的PHP文件中接收变量时:
$text=mysql_real_escape_string($_POST['subject']);
Run Code Online (Sandbox Code Playgroud)
然后回显它,我得到一个正确转义的字符串,但字符串在双引号之前停止!
我不希望它因为双引号而停止!
Javascript用于验证文本字段,因此它不是空的,也许我应该在验证时使用javascript做更多的事情,并改变值,所以php可以获得正确的值,包括双引号?
谢谢
UPDATE
码:
$headline= mysql_real_escape_string($_POST['headline']);
echo htmlentities($headline);
Run Code Online (Sandbox Code Playgroud)
我试过合并上面两个,只会给出相同的结果.注意:我已经尝试添加ENT_QUOTES到htmlentities功能...
输入的未格式化字符串:
+ , . ; : - _ space & % ! ? = # * ½ @ / \ [ ]< > " ' hej hej
Run Code Online (Sandbox Code Playgroud)
在回显它时会输出:
+ , . ; : - _ space & % ! ? = # * ½ @ / \\ [ ]< >
Run Code Online (Sandbox Code Playgroud)
Fra*_*anz 20
您必须使用htmlspecialchars($str, ENT_QUOTES)或htmlentities($str, ENT_QUOTES)将引号转换为HTML实体".这些功能还会处理应编码的其他字符.
mysql_real_escape_string() 仅用于在数据库查询中转义单引号,以便您可以正确地将带有单引号的字符串输入到数据库中(并避免SQL注入).
编辑:添加参数.感谢micahwittman
| 归档时间: |
|
| 查看次数: |
18845 次 |
| 最近记录: |