感到困惑的是PHP在HTML表单中转义双引号

rjr*_*ray 3 php

我有一个简单的PHP脚本,用于前端SQLite数据库.这没什么花哨或复杂的.但是我注意到从数据库中的记录中看到,我在带有双引号的表单字段中输入的任何内容都在表单处理中遇到,就好像我用反斜杠转义引号一样.所以当我输入标题的记录时:

英国轻型多用途车10HP"Tilly"

数据库中显示的是:

英国轻型多功能车10HP"蒂莉"

我不知道这些来自哪里,更糟糕的是,即使使用以下preg_replace似乎也不会删除它们:

$name = preg_replace('/\\"/', '"', $_REQUEST['kits_name']);

如果我转出$name,它仍然带有不需要的\字符.

Sar*_*raz 5

你很可能已经magic_quotes_gpc进入on了php.ini.如果您想避免这种情况并使用自己的正则表达式,请进行如下检查:

if (get_magic_quotes_gpc())
{
   $mytext = stripslashes($your_text);
}

// and your further code....
Run Code Online (Sandbox Code Playgroud)