$queries = AbstractPopulationHelper::generateUpdateSaveQuery($this->_maps, $entity, $entity->getId(), $this->_db);\r
$mergeMap = array();\r
$flattened = array();\r
- \r
+\r
foreach($queries as $index => $query)\r
{\r
$this_table = $query['table'];\r
}\r
}\r
}\r
-\r
+ \r
if(!array_key_exists($index, $mergeMap)) {\r
$prepared = isset($query['prepared']) ? $query['prepared'] : null;\r
$id = isset($query['id']) ? $query['id'] : null;\r
\r
- $flattened[] = array(\r
+ $flattened[$index] = array(\r
'columns' => $this_columns,\r
'table' => $this_table,\r
'prepared' => $prepared,\r
\r
$queries = array();\r
\r
- foreach($flattened as $info)\r
+ foreach($flattened as $index => $info)\r
{\r
if(isset($info['id']))\r
{\r
implode(', ', $info['columns']));\r
}\r
\r
- $queries[] = $query;\r
+ $queries[$index] = $query;\r
}\r
\r
// if($queries['TYPE'] == AbstractPopulationHelper::QUERY_TYPE_CREATE)\r
);\r
} else {\r
//TODO: logic to detemine what the value is? i.e., string, int etc?\r
- $queryColumnNamesAndValues[$columnName] = sprintf('"%s"', $columnValue);\r
+ $queryColumnNamesAndValues[$columnName] = $db->quote($columnValue);\r
}\r
}\r
\r
{\r
$property = ($property) ? '1' : '0';\r
}\r
- $queryColumnNamesAndValues[$mapsHelper->getColumnName()] = sprintf('%u', $property);\r
+ $queryColumnNamesAndValues[$mapsHelper->getColumnName()] = $property;\r
}\r
break;\r
case 'DataAccess\DataMapper\Helpers\VarcharMapsHelper':\r
$mapsHelper->getColumnName(),\r
$property); \r
} else {\r
- $queryColumnNamesAndValues[$mapsHelper->getColumnName()] = sprintf('"%s"', $property);\r
+ $queryColumnNamesAndValues[$mapsHelper->getColumnName()] = $db->quote($property);\r
}\r
\r
break;\r
\r
foreach($columns as $columnName => $columnValue)\r
{\r
- $query .= sprintf('%s="%s" AND ', $columnName, $columnValue);\r
+ $query .= sprintf('%s="%s" AND ', $columnName, str_replace('"', '\"', $columnValue));\r
}\r
\r
$query = substr($query, 0, -4);\r