如何在MySQL查询中使用带有单引号值的数组?

时间:2016-12-08 18:35:37

标签: php mysql

mysql_query("INSERT INTO objects(objId, objectId, objectCategory, SortOrder, Name) VALUES('{$obj_id}', '{$object_id}', '{$object_category}', '{$sortorder}', 'My " . $objecta['Name'] . "')")or die(mysql_error()); 

$objecta['Name']中包含单引号时,此代码失败。我似乎无法引用所有内容,以便即使$objecta['Name']中包含单引号也能正常工作。

1 个答案:

答案 0 :(得分:1)

两件事:

1)你应该逃避你的输入。 mysql_real_escape_string($objecta['Name'])这可以确保'字符之类的内容被转义,即允许插入发生的\'

2){@ 1}}扩展名已弃用,您至少应该使用mysql_*或pdo或其他数据库驱动程序。在其中一个其他数据库驱动程序中使用预处理语句可以完成与上面所述相同的操作。