2017-03-02 12:02:36 +01:00
|
|
|
<?php
|
|
|
|
|
2018-07-19 11:48:22 +02:00
|
|
|
class QueryTool
|
|
|
|
{
|
|
|
|
private $__pdoMap = array(
|
|
|
|
'integer' => PDO::PARAM_INT,
|
|
|
|
'float' => PDO::PARAM_STR,
|
|
|
|
'boolean' => PDO::PARAM_BOOL,
|
|
|
|
'string' => PDO::PARAM_STR,
|
|
|
|
'text' => PDO::PARAM_STR
|
|
|
|
);
|
2017-03-02 12:02:36 +01:00
|
|
|
|
2018-07-19 11:48:22 +02:00
|
|
|
public function quickDelete($table, $field, $value, $model)
|
|
|
|
{
|
|
|
|
$db = $model->getDataSource();
|
|
|
|
$connection = $db->getConnection();
|
2020-04-17 14:14:33 +02:00
|
|
|
if ($db->config['datasource'] == 'Database/Mysql' || $db->config['datasource'] == 'Database/MysqlObserver') {
|
2019-07-23 12:46:06 +02:00
|
|
|
$query = $connection->prepare('DELETE FROM ' . $table . ' WHERE ' . $field . ' = :value');
|
|
|
|
} elseif ($db->config['datasource'] == 'Database/Postgres' ) {
|
|
|
|
$query = $connection->prepare('DELETE FROM "' . $table . '" WHERE "' . $field . '" = :value');
|
|
|
|
}
|
2018-07-19 11:48:22 +02:00
|
|
|
$query->bindValue(':value', $value, $this->__pdoMap[$db->introspectType($value)]);
|
|
|
|
$query->execute();
|
|
|
|
}
|
2017-03-02 12:02:36 +01:00
|
|
|
}
|