setDefaultAdapter() public static method

Sets the default Zend_Db_Adapter_Abstract for all Zend_Db_Table objects.
public static setDefaultAdapter ( mixed $db = null ) : void
$db mixed Either an Adapter object, or a string naming a Registry key
return void
示例#1
0
 /**
  * @todo expireSessionCookie()
  * @todo rememberMe(xx)
  * @todo forgetMe()
  * @see Zend_Registry::get('session');
  * @return Zend_Session_Namespace
  */
 protected function _initSession()
 {
     $options = $this->getOption('ca_mgr');
     $db = Zend_Db::factory($options['db']['session']['pdo'], $options['db']['session']);
     /**
      * automatically clean up expired session entries from session cache
      * use the modified and lifetime stamps to calculate expire time
      */
     if ($options['db']['session']['autocleanup'] == '1') {
         $stmt = $db->query('delete from front_session where (modified + lifetime * 2) < unix_timestamp()');
         # $stmt->execute();
     }
     //you can either set the Zend_Db_Table default adapter
     //or you can pass the db connection straight to the save handler $config
     // @see lifetimeColumn / lifetime / overrideLifetime, lifetime defaults to php.ini: session.gc_maxlifetime
     Zend_Db_Table_Abstract::setDefaultAdapter($db);
     $config = array('name' => 'front_session', 'primary' => 'id', 'modifiedColumn' => 'modified', 'dataColumn' => 'data', 'lifetimeColumn' => 'lifetime');
     //create your Zend_Session_SaveHandler_DbTable and
     //set the save handler for Zend_Session
     Zend_Session::setSaveHandler(new Zend_Session_SaveHandler_DbTable($config));
     // Zend_Session::rememberMe(7200);
     //start your session!
     Zend_Session::start();
     $session = new Zend_Session_Namespace();
     if (!isset($session->started)) {
         $session->started = time();
     }
     if (!isset($session->authdata)) {
         $session->authdata = array('authed' => false);
     }
     Zend_Registry::set('session', $session);
     return $session;
 }
示例#2
0
 /**
  * Inicializa a conexão com o banco de dados
  * Usa o Zend_Cache para o metadata das tabelas
  *
  * @uses Zend_Cache
  */
 protected function _initDB()
 {
     // Configura a conexão com o BD
     $config = new Zend_Config($this->getOptions());
     $db = Zend_Db::factory($config->resources->db);
     Zend_Db_Table_Abstract::setDefaultAdapter($db);
 }
示例#3
0
 /**
  * Store the db adapter in the registry
  * and set the default one for the mappers
  *
  * @return Zend_Db_Adapter_Abstract
  */
 protected function _initDb()
 {
     $db = $this->getPluginResource('db')->getDbAdapter();
     Zend_Registry::set('db', $db);
     Zend_Db_Table_Abstract::setDefaultAdapter($db);
     return $db;
 }
示例#4
0
 protected function _initDb()
 {
     $config = Zend_Registry::get('config');
     $options = $config->mtb->db->params;
     $db = Zend_Db::factory('PDO_MYSQL', $options);
     Zend_Db_Table_Abstract::setDefaultAdapter($db);
 }
示例#5
0
 /**
  * Cleans up the environment after running a test.
  */
 protected function tearDown()
 {
     $this->Feeds = null;
     // restore the old default db
     Zend_Db_Table_Abstract::setDefaultAdapter($this->oldDefaultDb);
     parent::tearDown();
 }
 public function run()
 {
     // Lade Konfig
     $config = new Zend_Config_Ini(APPLICATION_PATH . '/configs/application.ini', APPLICATION_ENV);
     Zend_Registry::set('config', $config);
     // Erstelle DB Adapter
     $db = Zend_Db::factory($config->db);
     Zend_Registry::set('db', $db);
     Zend_Db_Table_Abstract::setDefaultAdapter(Zend_Registry::get('db'));
     if (APPLICATION_ENV !== 'production') {
         $profiler = new Zend_Db_Profiler_Firebug('All Database Queries:');
         $profiler->setEnabled(true);
         $db->setProfiler($profiler);
     }
     $resourceLoader = new Zend_Loader_Autoloader_Resource(array('basePath' => APPLICATION_PATH, 'namespace' => ''));
     $resourceLoader->addResourceType('plugins', 'plugins', 'Plugins');
     if (PHP_SAPI != 'cli') {
         $front = Zend_Controller_Front::getInstance();
         $front->registerPlugin(new Plugins_Stats());
         if (APPLICATION_ENV == 'production') {
             $front->registerPlugin(new Plugins_Cache());
         }
     }
     Zend_View_Helper_PaginationControl::setDefaultViewPartial('_partials/controls.phtml');
     parent::run();
 }
示例#7
0
 public static function setDbAdapter()
 {
     $cnf = Zend_Registry::get('cnf');
     $db = Zend_Db::factory($cnf->db);
     Zend_Db_Table_Abstract::setDefaultAdapter($db);
     Zend_Registry::set('db', $db);
 }
示例#8
0
 public function dispatchLoopStartup(Zend_Controller_Request_Abstract $request)
 {
     $auth = Zend_Auth::getInstance();
     $result = $auth->getStorage();
     $identity = $auth->getIdentity();
     $registry = Zend_Registry::getInstance();
     $config = Zend_Registry::get('config');
     $module = strtolower($this->_request->getModuleName());
     $controller = strtolower($this->_request->getControllerName());
     $action = strtolower($this->_request->getActionName());
     if ($identity && $identity != "") {
         $layout = Zend_Layout::getMvcInstance();
         $view = $layout->getView();
         $view->login = $identity;
         $siteInfoNamespace = new Zend_Session_Namespace('siteInfoNamespace');
         $id = $siteInfoNamespace->userId;
         $view->firstname = $siteInfoNamespace->Firstname;
         $username = $siteInfoNamespace->username;
         $password = $siteInfoNamespace->password;
         $db = new Zend_Db_Adapter_Pdo_Mysql(array('host' => $config->resources->db->params->host, 'username' => $username, 'password' => $password, 'dbname' => $config->resources->db->params->dbname));
         Zend_Db_Table_Abstract::setDefaultAdapter($db);
         return;
     } else {
         $siteInfoNamespace = new Zend_Session_Namespace('siteInfoNamespace');
         $siteInfoNamespace->requestURL = $this->_request->getParams();
         $this->_request->setModuleName('default');
         $this->_request->setControllerName('Auth');
         $this->_request->setActionName('login');
     }
 }
示例#9
0
 public function routeShutdown(Zend_Controller_Request_Abstract $request)
 {
     $useModule = array('default', 'mice');
     if (in_array($request->getModuleName(), $useModule) and $this->getRequest()->getParam('language') != 'scripts') {
         Zend_Db_Table_Abstract::setDefaultAdapter(Zend_Registry::get('read'));
     } else {
         Zend_Db_Table_Abstract::setDefaultAdapter(Zend_Registry::get('write'));
     }
     if (in_array($request->getModuleName(), $useModule) and $this->getRequest()->getParam('language') != 'scripts') {
         $language = $this->getRequest()->getParam('language');
         if (empty($language)) {
             $language = 'id';
         }
         // Model
         $dictionaryDb = new Model_DbTable_Dictionary();
         $languageDb = new Model_DbTable_Language();
         // Data
         $dictionary = $dictionaryDb->getDictionaryArray($language);
         $languageId = $languageDb->getIdByName($language);
         try {
             // Translator Zend
             $translate = new Zend_Translate('array', $dictionary, $language);
             // Set registry
             Zend_Registry::set('Zend_Translate', $translate);
             Zend_Registry::set('language', $language);
             Zend_Registry::set('languageId', $languageId['language_id']);
             Zend_Registry::set('languageText', $languageId['language_text']);
         } catch (Zend_Translate_Exception $zte) {
         } catch (Zend_Exception $ze) {
         }
     }
 }
示例#10
0
 public function testAction()
 {
     $time_start = microtime(true);
     $params = array('host' => '127.0.0.1', 'username' => 'root', 'password' => 'root', 'dbname' => 'langithp');
     $db = Zend_Db::factory('PDO_MYSQL', $params);
     Zend_Db_Table_Abstract::setDefaultAdapter($db);
     require_once '/Users/n/Documents/Work/Zend/kutump/test/CatalogAttribute.php';
     $tbl = new CatalogAttribute();
     $rows = $tbl->fetchAll();
     $num = count($rows);
     echo "<b><center>Database Output</center></b><br><br>";
     $i = 0;
     for ($i = 0; $i < $num; $i++) {
         //$tmpGuid = mysql_result($result,$i,"guid");
         $row = $rows->current();
         $tmpGuid = $row->title;
         echo '<br>' . $tmpGuid;
         echo '<br>' . $i;
         $rows->next();
         //$i++;
     }
     $dbh = null;
     echo '<br>Total: ' . $i;
     $time_end = microtime(true);
     $time = $time_end - $time_start;
     echo '<br>WAKTU EKSEKUSI: ' . $time;
     //die('hiho');
 }
示例#11
0
 function __construct()
 {
     $options = array('host' => 'localhost', 'username' => 'root', 'password' => 'root', 'dbname' => 'zendcastdev');
     $this->db = Zend_Db::factory('PDO_MYSQL', $options);
     Zend_Db_Table_Abstract::setDefaultAdapter($this->db);
     $this->users = new UsersTable();
 }
示例#12
0
/**
 * Initizlize Zend DB
 */
function init_zend_db()
{
    try {
        include APPPATH . 'config' . DIRECTORY_SEPARATOR . 'database.php';
        $__dbParams = array('host' => $db[$active_group]['hostname'], 'username' => $db[$active_group]['username'], 'password' => $db[$active_group]['password'], 'dbname' => $db[$active_group]['database'], 'persistent' => $db[$active_group]['pconnect']);
        $__db = Zend_Db::factory('PDO_MYSQL', $__dbParams);
        include APPPATH . 'config/cache.php';
        $feEngine = $config['dbschema_frontend_engine'];
        $feOptions = $config['dbschema_frontend'];
        $beEngine = $config['dbschema_backend_engine'];
        $beOptions = $config['dbschema_backend'];
        if (isset($beOptions['cache_dir']) && !file_exists($beOptions['cache_dir'])) {
            mkdir($beOptions['cache_dir']);
            chmod($beOptions['cache_dir'], 0777);
        }
        //      var_dump($beOptions['cache_dir']);
        $cache = Zend_Cache::factory($feEngine, $beEngine, $feOptions, $beOptions);
        Zend_Db_Table_Abstract::setDefaultMetadataCache($cache);
        Zend_Db_Table_Abstract::setDefaultAdapter($__db);
        Profiler::start($db[$active_group], $__db);
        $__db->query('SET NAMES ' . $db['default']['char_set']);
        $__db->query('SET SQL_MODE = "NO_UNSIGNED_SUBTRACTION"');
    } catch (Exception $e) {
        header("HTTP/1.1 500 Internal Server Error (DB)");
        echo $e->getMessage();
        exit;
    }
}
示例#13
0
 public function __construct()
 {
     //set country
     //lookup country from subdomain
     // must be format like http://country.site.org
     $parts = explode('.', $_SERVER['HTTP_HOST']);
     self::$COUNTRY = $parts[0];
     require_once 'settings.php';
     $countryLoaded = false;
     if ($parts[1] == 'trainingdata') {
         Settings::$DB_DATABASE = Globals::$DB_TABLE_PREFIX . $parts[0];
         self::$COUNTRY = $parts[0];
         Settings::$COUNTRY_BASE_URL = 'http://' . $parts[0] . '.' . Globals::$DOMAIN;
         $countryLoaded = true;
     }
     error_reporting(E_ALL);
     // PATH_SEPARATOR =  ; for windows, : for *nix
     $iReturn = ini_set('include_path', Globals::$BASE_PATH . PATH_SEPARATOR . Globals::$BASE_PATH . 'app' . PATH_SEPARATOR . (Globals::$BASE_PATH . 'ZendFramework' . DIRECTORY_SEPARATOR . 'library') . PATH_SEPARATOR . ini_get('include_path'));
     require_once 'Zend/Loader.php';
     if ($countryLoaded) {
         //fixes mysterious configuration issue
         require_once 'Zend/Db/Adapter/Pdo/Mysql.php';
         require_once 'Zend/Db.php';
         //set a default database adaptor
         $db = Zend_Db::factory('PDO_MYSQL', array('host' => Settings::$DB_SERVER, 'username' => Settings::$DB_USERNAME, 'password' => Settings::$DB_PWD, 'dbname' => Settings::$DB_DATABASE));
         require_once 'Zend/Db/Table/Abstract.php';
         Zend_Db_Table_Abstract::setDefaultAdapter($db);
     }
 }
示例#14
0
 public function _initDb()
 {
     $resource = $this->getPluginResource('db');
     $options = $resource->getOptions();
     $db = new Zend_Db_Adapter_Pdo_Mysql($options["params"]);
     Zend_Db_Table_Abstract::setDefaultAdapter($db);
 }
 /**
  * initalize session
  */
 protected function _initSession()
 {
     $resource = $this->getPluginResource('db');
     $db = $resource->getDbAdapter();
     Zend_Db_Table_Abstract::setDefaultAdapter($db);
     $config = array('name' => 'sessions', 'primary' => 'sessionId', 'modifiedColumn' => 'modified', 'dataColumn' => 'data', 'lifetimeColumn' => 'lifetime', 'lifetime' => 60 * 60 * 24 * 14);
     Zend_Session::setSaveHandler(new Zend_Session_SaveHandler_DbTable($config));
 }
示例#16
0
 protected function initDB()
 {
     /* @var $cnf Zend_Config_Ini */
     $cnf = Zend_Registry::get('config');
     $db = Zend_Db::factory($cnf->database->adapter, $cnf->database->params->toArray());
     Zend_Db_Table_Abstract::setDefaultAdapter($db);
     Zend_Registry::set('db_adapter', $db);
 }
示例#17
0
 protected function getConnection()
 {
     $config = new Zend_Config_Ini(APPLICATION_PATH . '/configs/application.ini', 'testing');
     $connection = Zend_Db::factory($config->resources->db->adapter, $config->resources->db->params);
     $this->_connectionMock = $this->createZendDbConnection($connection, 'zfunittests');
     Zend_Db_Table_Abstract::setDefaultAdapter($connection);
     return $this->_connectionMock;
 }
示例#18
0
 /**
  * Prepares the environment before running a test.
  */
 protected function setUp()
 {
     parent::setUp();
     $adapter = new Zend_Db_Adapter_Pdo_Sqlite(array('dbname' => dirname(__FILE__) . '/_files/testdb.sqlite'));
     Zend_Db_Table_Abstract::setDefaultAdapter($adapter);
     $this->_zymTable = new Bugs();
     $this->_zymTable->addReference('Reporter', 'reported_by', 'Accounts', 'account_name')->addReference('Engineer', 'assigned_to', 'Accounts', 'account_name')->addReference('Verifier', array('verified_by'), 'Accounts', array('account_name'));
 }
示例#19
0
 public function _initDatabase()
 {
     // Register DB
     $dbConfig = new Zend_Config_Ini(APPLICATION_PATH . '/configs/database.ini', APPLICATION_ENV);
     $dbAdapter = Zend_Db::factory($dbConfig->database);
     Zend_Db_Table_Abstract::setDefaultAdapter($dbAdapter);
     Zend_Registry::set('dbAdapter', $dbAdapter);
 }
示例#20
0
 protected function _initDb()
 {
     $resource = $this->getPluginResource('db');
     $db = $resource->getDbAdapter();
     $db->getProfiler()->setEnabled(true);
     Zend_Db_Table_Abstract::setDefaultAdapter($db);
     Zend_Registry::set('db', $db);
 }
示例#21
0
 /**
  * Initialisation for the database, values see configs/application.ini
  *
  */
 protected function _initDb()
 {
     if ($this->_config->db) {
         $db = Zend_Db::factory($this->_config->db);
         Zend_Db_Table_Abstract::setDefaultAdapter($db);
         Zend_Registry::set('db', $db);
     }
 }
示例#22
0
 /**
  * @param string $adapter
  * @param array $options
  * @return \Enlight_Components_Db_Adapter_Pdo_Mysql
  */
 public function factory($adapter, $options)
 {
     /** @var \Enlight_Components_Db_Adapter_Pdo_Mysql $db */
     $db = \Enlight_Components_Db::factory($adapter, $options);
     // Reset sql_mode "STRICT_TRANS_TABLES" that will be default in MySQL 5.6
     $db->exec("SET @@session.sql_mode = ''");
     \Zend_Db_Table_Abstract::setDefaultAdapter($db);
     return $db;
 }
示例#23
0
 protected function _initDatabase()
 {
     $config = Zend_Registry::get('config');
     $db = Zend_Db::factory($config->resources->db->adapter, $config->resources->db->params->toArray());
     Zend_Db_Table_Abstract::setDefaultAdapter($db);
     $db->setFetchMode(Zend_Db::FETCH_OBJ);
     /** Registra a variável db */
     Zend_Registry::set('db', $db);
 }
示例#24
0
文件: TestCase.php 项目: rosstuck/Isa
 /**
  * @return PHPUnit_Extensions_Database_DB_IDatabaseConnection
  */
 protected function getConnection()
 {
     if ($this->_connectionMock == null) {
         $connection = Zend_Db_Table_Abstract::getDefaultAdapter();
         $this->_connectionMock = $this->createZendDbConnection($connection, 'zfunittests');
         Zend_Db_Table_Abstract::setDefaultAdapter($connection);
     }
     return $this->_connectionMock;
 }
示例#25
0
 /**
  * initialize and creates the db adapter
  *
  * @return Zend_Db_Adapter_Pdo_Mysql
  */
 public function initDb()
 {
     //loads the db application option given in the application starter
     $config = $this->Application()->getOptions();
     $db = Enlight_Components_Db::factory(new Zend_Config(array('adapter' => $config["adapter"], 'params' => $config["db"])));
     $db->getConnection();
     Zend_Db_Table_Abstract::setDefaultAdapter($db);
     return $db;
 }
示例#26
0
 public function controllerDrivenDB($request)
 {
     $controller = $request->getControllerName();
     $config = Zend_Registry::get('config');
     if (isset($config['resources']['db'][$controller])) {
         $dbs = $config['resources']['db'][$controller];
         if (!isset($dbs[0])) {
             $dbs = array($dbs);
         }
         $dbs = $config['resources']['db'][$controller];
         $count = sizeof($dbs);
         for ($i = 0; $i < $count; $i++) {
             $connect = true;
             try {
                 $db = Zend_Db::factory($dbs[$i]['adapter'], $dbs[$i]['params']);
                 $db->getConnection();
             } catch (Zend_Db_Adapter_Exception $e) {
                 $connect = false;
             } catch (Zend_Exception $e) {
                 $connect = false;
             }
             if ($connect == true) {
                 Zend_Registry::set('db-prefix', $dbs[$i]['prefix']);
                 break;
             }
         }
     } else {
         $dbs = $config['resources']['db'];
         if (!isset($dbs[0])) {
             $dbs = array($dbs);
         }
         $count = sizeof($dbs);
         for ($i = 0; $i < $count; $i++) {
             $connect = true;
             try {
                 $db = Zend_Db::factory($dbs[$i]['adapter'], $dbs[$i]['params']);
                 $db->getConnection();
             } catch (Zend_Db_Adapter_Exception $e) {
                 $connect = false;
             } catch (Zend_Exception $e) {
                 $connect = false;
             }
             if ($connect == true) {
                 Zend_Registry::set('db-prefix', $dbs[$i]['prefix']);
                 break;
             }
         }
     }
     if ($config['evil']['db']['profiling']) {
         $profiler = new Zend_Db_Profiler_Firebug('DB Queries');
         $profiler->setEnabled(true);
         $db->setProfiler($profiler);
     }
     Zend_Registry::set('db', $db);
     Zend_Db_Table_Abstract::setDefaultAdapter($db);
 }
示例#27
0
 protected function _initDb()
 {
     // set up multiple databases
     $this->bootstrap('multidb');
     $multidb = $this->getResource('multidb');
     Zend_Registry::set('db_default', $multidb->getDb('default'));
     // set default database
     $default = $multidb->getDb('default');
     Zend_Db_Table_Abstract::setDefaultAdapter($default);
 }
 public static function vindb_connect()
 {
     if (self::$_vindb == null) {
         $vin_config = new Zend_Config_Ini(dirname(__FILE__) . "/../config.ini", "vin-db");
         $vin_params = array('host' => $vin_config->vin_params->host, 'username' => $vin_config->vin_params->username, 'password' => $vin_config->vin_params->password, 'dbname' => $vin_config->vin_params->dbname, 'charset' => 'utf8', 'profiler' => true);
         self::$_vindb = Zend_Db::factory($vin_config->adapter, $vin_params);
         Zend_Db_Table_Abstract::setDefaultAdapter(self::$_vindb);
     }
     return self::$_vindb;
 }
示例#29
0
 public function testUnitTestLoadFixtures()
 {
     Zend_Db_Table_Abstract::setDefaultAdapter($db = new Zend_Db_Adapter_Pdo_Sqlite(array('dbname' => ":memory:")));
     $db->getConnection()->exec('DROP TABLE IF EXISTS `foo`; CREATE TABLE `foo` (`a` VARCHAR, `b` VARCHAR);');
     $suite = new PHPUnit_Framework_TestSuite();
     $suite->addTestSuite('NotEmptyZendDbTest');
     $suite->run($result = new PHPUnit_Framework_TestResult());
     $this->assertEquals(1, $result->count());
     $this->assertTestsAreSuccessful($result);
 }
示例#30
0
 function __construct($prefetch = true)
 {
     if (!$prefetch === false) {
         unset($_rowClass);
     }
     $this->db = Zend_Registry::get("db");
     Zend_Db_Table_Abstract::setDefaultAdapter($this->db);
     $this->log = Zend_Registry::get('log');
     $this->_setup();
 }