2013-03-12 34 views
0

我找不到这个简单(?)问题的明确答案。PDO准备了转换单引号的语句

我最近搬到PDO和我做了简单的插入查询:

$sql = "INSERT INTO item(name) values (:name)"; 
$q = $db->prepare($sql); 
$q->bindParam(':name', $name); 

现在,当我把参数“迪娜的”,它的明显转化为

"Dina's" 

(或至少这是它看起来在phpmyadmin中)。

是否可以以某种方式阻止此转换,以便数据按照它在bindParam上提供的方式进行存储?或者,当前的转换值是存储数据的最佳方式吗?

+1

这段代码什么都不转换,你应该检查'$ name'的来源以及它的真实值。 – 2013-03-12 09:16:47

+0

哦,该死,你是对的!由于堆栈太长,我没有注意到'$ name'转换。感谢您指出我的错误。我真的以为有一些奇怪的转换设置搞乱存储过程。 – Janne 2013-03-12 09:22:12

回答

2

这段代码什么都不转换,你应该检查$ name的来源以及它的真实值。