PDO:插入包含'不在SQLite3中使用PHP 5.3.4执行的查询

时间:2011-04-07 07:17:20

标签: php sqlite pdo

我正在使用PHP5 / SQLite3创建一个博客应用程序。要在数据库中插入帖子,我正在执行下面写的查询。

$db=connectToDatabase();
$tempcontent=$db->escapeString($tempcontent);
$query = "INSERT INTO posts VALUES (null,$temptitle, $tempcontent, $tempcategory, $tempauthor)";
$db->query($query);
$db=disconnectToDatabase();

当文本输入包含'或'时,我遇到问题。当存在'时,查询根本没有执行。如果'不存在则那么'在浏览器中显示为escape(\“)。 对不起,我忘了提及: connectTodatabase()函数提供了非常通用的连接数据库的方法。 as:

try {
  $db1 = new PDO("sqlite:blog.db");
}catch( PDOException $exception ){
  die($exception->getMessage());
}
return $db1;

1 个答案:

答案 0 :(得分:0)

刚刚发表全班,因为我们不是读者或心理学家。

可能的问题是您没有转义您在查询中包含的数据。

使用mysql_real_escape_string():

http://php.net/manual/en/function.mysql-real-escape-string.php

或PDO准备好的陈述:

http://www.php.net/manual/en/pdo.prepare.php