有逃脱报价的麻烦,PHP

时间:2011-12-07 05:05:58

标签: php mysql database magic-quotes

我有一个for循环,它贯穿一组问题,每个问题旁边都有一个文本区域。但如果问题或答案中有撇号(就好像有人在问题中询问“不要”或“不能”),它就不会插入到数据库中。我已经尝试过带斜线并添加斜线以摆脱问题无济于事 这就是我到目前为止所做的。

for循环向用户显示没有斜线的问题。

    for($i = 0; $i< sizeof($answered); $i++)
    {
        echo "<h3><center>" . stripslashes($question[$i]) . "</center></h3>";
        show_form($question[$i]);
    }

和POST设置:

    if ( !empty($_POST['answer']) )
    {
        $quest = mysqli_real_escape_string ($dbc, $_POST['question']);
        $answer = mysqli_real_escape_string ($dbc, $_POST['answer']);
    }

3 个答案:

答案 0 :(得分:0)

在php.ini中设置magic_quotes_gpc = Off

OR

在.htaccess中添加php_flag magic_quotes_gpc Off

答案 1 :(得分:0)

检查php.ini文件中 magic_quotes_gpc 是否启用
如果启用了magic_quotes_gpc,请先将 stripslashes()应用于数据。
对已经转义的数据使用此功能将使数据转义两次。

答案 2 :(得分:-1)

尝试htmlentities($question[$i], ENT_QUOTES);存储数据,html_entity_decode($question[$i], ENT_QUOTES);显示数据。