我使用 tinymce 作为我网站的文本编辑器。
每当我尝试使用它添加内容时,它都能完美运行,但如果
'
文本中有一个(例如:“Can't”),我会收到以下错误:
Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '...
您没有使用准备好的语句。这意味着 ' 等特殊字符会干扰您的 SQL 语句。最终,这意味着您的代码对SQL 注入是开放的。研究使用PDO的 Prepared Statements 。这是手册中的一个简单示例:
<?php
$stmt = $dbh->prepare("INSERT INTO REGISTRY (name, value) VALUES (:name, :value)");
$stmt->bindParam(':name', $name);
$stmt->bindParam(':value', $value);
// insert one row
$name = 'one';
$value = 1;
$stmt->execute();
// insert another row with different values
$name = 'two';
$value = 2;
$stmt->execute();
?>