如何防止SQL使用单引号字符存储转义字符

时间:2018-03-15 11:55:27

标签: javascript php sql-server

我需要存储在开头和结尾都有单引号的文本字符串。 我正在从PHP发出JavaScript命令。 我在这个字符串中添加引号:

echo '<script type="text/javascript">';
echo 'function GetCodes() {';
        echo 'var vlist = document.getElementById("vListOfCodes");';
        echo 'var vcodes = "";';
        echo 'var i;';
        echo 'for (i = 0; i < vlist.length; i++) {';
            echo 'if (i == 0) {';
                echo 'vcodes = vcodes + "\'" + vlist.options[i].value + "\'";';
            echo '}';
            echo 'else {';
                echo 'vcodes = vcodes + ",\'" + vlist.options[i].value + "\'";';
            echo '}';
        echo '}';
        echo 'document.getElementById("vStringOfCodes").value = vcodes;';
    echo '}';
echo '</script>';

当表单发布并且$ _POST ['vStringOfCodes']数据保存到SQL SERVER表时,反斜杠字符与单引号一起添加,而不是

字段中的值
  

'的MyString','mystring2' ,...

我有

  

\ '的MyString \' \ 'mystring2 \',...

如何防止在那里添加反斜杠?

1 个答案:

答案 0 :(得分:1)

您可以使用php native function stripslashes

$str = "\'mytext\'";
echo stripslashes($str);
//outputs 'mytext'
//in your case
echo stripslashes($_POST['HiddenInput'])

Php function stripslashes