/** * Führt eine vordefinierte Anfrage an die Datenbank durch. * Gibt bei Erfolg true, andernfalls false zurück. * * @param QuerySet das auszuführende QuerySet-Objekt * * @return bool */ protected function enquire(QuerySet $obj) { if (!mysql_query('START TRANSACTION')) { return false; } $this->results = array(); for ($i = 0; $i < $obj->count(); $i++) { for ($k = 0; $k < count($arr1 = $obj->getParams($i)); $k++) { $arr2[$k] = $this->fields[$arr1[$k]]; } $sql = vsprintf($obj->getQuery($i), $arr2); if (!($this->results[] = mysql_query($sql))) { $this->error = mysql_error(); mysql_query('ROLLBACK'); return false; } } if (!mysql_query('COMMIT')) { return false; } return true; }