コード例 #1
2
ファイル: base_dao.php プロジェクト: hardikamutech/hammu
 public function findIdListByExample(OW_Example $example, $cacheLifeTime = 0, $tags = array())
 {
     if ($example === null) {
         throw new InvalidArgumentException('argument must not be null');
     }
     $sql = 'SELECT `id` FROM ' . $this->getTableName() . $example;
     return $this->dbo->queryForColumnList($sql, array(), $cacheLifeTime, $tags);
 }
コード例 #2
2
ファイル: example.php プロジェクト: vBulleteen/oxwall
 /**
  * @param array $fields
  * @param string $value
  * @return OW_Example
  */
 public function andFieldMatchAgainst(array $fields, $value)
 {
     $fieldsString = '';
     foreach ($fields as $field) {
         $fieldsString = '`' . $this->dbo->escapeString($field) . '`,';
     }
     $fieldsString = mb_substr($fieldsString, 0, -1);
     $this->criteriaString .= ' AND MATCH(' . $fieldsString . ') AGAINST (\'' . $this->dbo->escapeString($value) . '\')';
     return $this;
 }
コード例 #3
2
ファイル: file_service.php プロジェクト: SongPhi/spdownload
 public function addFileCategory($idFile, $idCategory)
 {
     if (isset($idFile) && !empty($idFile)) {
         $tableFileCategory = OW_DB_PREFIX . 'spdownload_files_categories';
         $file = new SPDOWNLOAD_CTRL_Object();
         $file->fileId = $idFile;
         $file->categoryId = $idCategory;
         OW_Database::insert($tableFileCategory, $file);
     }
 }
コード例 #4
1
 /**
  * Returns the instance of class for $params
  *
  * @param array $params ( host, username, password, dbname, [socket], [port] )
  *
  * @return OW_Database
  *
  */
 public static function getInstance($params)
 {
     if (!isset(self::$classInstances)) {
         self::$classInstances = array();
     }
     ksort($params);
     $connectionKey = serialize($params);
     if (empty(self::$classInstances[$connectionKey])) {
         if (!isset($params['host']) || !isset($params['username']) || !isset($params['password']) || !isset($params['dbname'])) {
             throw new InvalidArgumentException("Can't connect to database. Please provide valid connection attributes.");
         }
         self::$classInstances[$connectionKey] = new self($params);
     }
     return self::$classInstances[$connectionKey];
 }
コード例 #5
0
ファイル: update_executor.php プロジェクト: ZyXelP/oxwall
 private function setDevMode($mode = null)
 {
     $mode = $mode ? intval($mode) : 1;
     $this->db->query("UPDATE `{$this->dbPrefix}base_config` SET `value` = 1 WHERE `key` = 'base' AND `name` = 'dev_mode'", array("mode" => $mode));
 }
コード例 #6
0
ファイル: ow.php プロジェクト: hardikamutech/hammu
 /**
  * Returns DB access object with default connection.
  *
  * @return OW_Database
  */
 public static function getDbo()
 {
     if (self::$dboInstance === null) {
         $params = array('host' => OW_DB_HOST, 'username' => OW_DB_USER, 'password' => OW_DB_PASSWORD, 'dbname' => OW_DB_NAME);
         if (defined('OW_DB_PORT') && OW_DB_PORT !== null) {
             $params['port'] = OW_DB_PORT;
         }
         if (defined('OW_DB_SOCKET')) {
             $params['socket'] = OW_DB_SOCKET;
         }
         if (OW_DEV_MODE || OW_PROFILER_ENABLE) {
             $params['profilerEnable'] = true;
         }
         if (OW_DEBUG_MODE) {
             $params['debugMode'] = true;
         }
         self::$dboInstance = OW_Database::getInstance($params);
     }
     return self::$dboInstance;
 }
コード例 #7
0
ファイル: cache_backend_mysql.php プロジェクト: ZyXelP/oxwall
 public function test($key)
 {
     return $this->dbo->queryForColumn("SELECT `id` FROM `" . $this->getCacheTableName() . "` WHERE `key` = :key AND `expireTimestamp` >= :ts", array('key' => $key, 'ts' => time())) ? true : false;
 }
コード例 #8
0
ファイル: install.php プロジェクト: vazahat/dudex
 public function db()
 {
     $this->setPageTitle('Database');
     INSTALL::getStepIndicator()->activate('db');
     $fieldData = array();
     $fieldData['db_prefix'] = 'ow_';
     $sessionData = INSTALL::getStorage()->getAll();
     $fieldData = array_merge($fieldData, $sessionData);
     $this->assign('data', $fieldData);
     $errors = array();
     if (OW::getRequest()->isPost()) {
         $data = $_POST;
         $data = array_filter($data, 'trim');
         $success = true;
         if (empty($data['db_host']) || !preg_match('/^[^:]+?(\\:\\d+)?$/', $data['db_host'])) {
             $errors[] = 'db_host';
         }
         if (empty($data['db_user'])) {
             $errors[] = 'db_user';
         }
         if (empty($data['db_name'])) {
             $errors[] = 'db_name';
         }
         if (empty($data['db_prefix'])) {
             $errors[] = 'db_prefix';
         }
         $this->processData($data);
         if (empty($errors)) {
             $hostInfo = explode(':', $data['db_host']);
             try {
                 $dbo = OW_Database::getInstance(array('host' => $hostInfo[0], 'port' => empty($hostInfo[1]) ? null : $hostInfo[1], 'username' => $data['db_user'], 'password' => empty($data['db_password']) ? '' : $data['db_password'], 'dbname' => $data['db_name']));
                 $existingTables = $dbo->queryForColumnList("SHOW TABLES LIKE '{$data['db_prefix']}base_%'");
                 if (!empty($existingTables)) {
                     INSTALL::getFeedback()->errorMessage('This database should be empty _especially_ if you try to reinstall Oxwall.');
                     $this->redirect();
                 }
             } catch (InvalidArgumentException $e) {
                 INSTALL::getFeedback()->errorMessage('Could not connect to Database<div class="feedback_error">Error: ' . $e->getMessage() . '</div>');
                 $this->redirect();
             }
         }
         if (empty($errors)) {
             $this->redirect(OW::getRouter()->urlForRoute('install'));
         }
         foreach ($errors as $flag) {
             INSTALL::getFeedback()->errorFlag($flag);
         }
         $this->redirect();
     }
 }