在'input type ="text"'值中使用双引号不起作用,字符串在双引号处停止!

6 html javascript php

如何让用户在文本字段中使用'''(双引号)...

每当我在字段中使用双引号(值)时,在我的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实体&quot;.这些功能还会处理应编码的其他字符.

mysql_real_escape_string() 仅用于在数据库查询中转义单引号,以便您可以正确地将带有单引号的字符串输入到数据库中(并避免SQL注入).

编辑:添加参数.感谢micahwittman