/** * protege les champs selon le type défini dans le shema * (effet sur update et insert) * @param unknown $column * @param unknown $data * @param string $raw * @return unknown|string */ protected function quoteData($column, $data, $raw = null) { $data = $this->dbTable->filter($column, $data); if ($raw) { return $data; } if (is_null($data)) { return 'NULL'; } if (ctype_digit("{$data}")) { $type = $this->dbTable->getTypeColumn($column); switch (mb_strtolower($type)) { // numeric myssql case 'bigint': case 'mediumint': case 'tinyint': case 'int': case 'integer': // numeric pgsql // numeric pgsql case 'bigserial': case 'smallint': case 'int2': case 'int4': case 'int8': return $data; } } return $this->dbTable->DbLink->quote($data); }