3

我使用 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 '...
4

1 回答 1

4

您没有使用准备好的语句。这意味着 ' 等特殊字符会干扰您的 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();
?>
于 2013-01-25T21:04:53.473 回答