Zend_Auth_Adapter_DbTable UTF-8

0 Cevap php

Burada bir veritabanından bir kimlik alıyorum nasıl:

$adapter = new Zend_Auth_Adapter_DbTable(Zend_Registry::get('dbAdapter'));
$adapter->setTableName('clients');
$adapter->setIdentityColumn('email');
$adapter->setCredentialColumn('password_hash');
// etc

$client = $adapter->getResultRowObject(null, array('password_hash'));
Zend_Session::rememberMe(604800);
// store client object in the session
$authStorage = $auth->getStorage();
$authStorage->write($client);

Bu sorun getResultRowObject () berbat aksan ile bir nesne döndürür olmasıdır. Benim veritabanı UTF-8 kodlamasını yanı sıra tüm tablolar vardır.

Yani yerine:

Košice

Alıyorum:

Košice

Bu benim db adaptörünü oluşturma nasıl:

protected function _initDb()
{
    $this->configuration = new Zend_Config_Ini(APPLICATION_PATH
                                               . '/configs/application.ini',
                                               APPLICATION_ENVIRONMENT);
    $this->dbAdapter = Zend_Db::factory($this->configuration->database);
    Zend_Db_Table_Abstract::setDefaultAdapter($this->dbAdapter);
    $stmt = new Zend_Db_Statement_Pdo($this->dbAdapter,
                                      "SET NAMES 'utf8'");
    $stmt->execute();
}

0 Cevap