引用从MySQL打印文本

时间:2015-05-05 23:35:33

标签: php html-entities

当我从mysql commentaries字段显示文本时,我在php中使用以下函数:

nl2br(html_entity_decode($comment['message']))

当我在查询中插入数据库时​​使用:

htmlentities($_POST['message'])

问题是,当我写一个句子如:“Hello”并显示它显示:\“Hello \”

我该如何避免这种情况?

提前致谢。

更新:

这是插入内容:

$query = "INSERT INTO db.tablon (pID, userID, message, date_inserted, answer)
                VALUES (:proyectoID, :userID, :mensaje, NOW(), :respuesta_mensaje_id)";
    $stmt  = $pdo->prepare($query);
    $stmt->bindParam(':userID',     $userID,                    PDO::PARAM_STR);
    $stmt->bindParam(':proyectoID', $_POST['pID'],              PDO::PARAM_STR);
    $stmt->bindParam(':mensaje',    htmlentities($_POST['respuesta_tablon']), PDO::PARAM_STR);
    $stmt->bindParam(':respuesta_mensaje_id',   $_POST['mID'],  PDO::PARAM_STR);
    $res = $stmt->execute();

1 个答案:

答案 0 :(得分:0)

逃避他们的mysql

$mysqli->real_escape_string($_POST['message']);

mysqli_real_escape_string($link,$_POST['message']);