当我从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();
答案 0 :(得分:0)
逃避他们的mysql
$mysqli->real_escape_string($_POST['message']);
mysqli_real_escape_string($link,$_POST['message']);