Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

anador

Erro ao inserir dados no Zend_Db

Recommended Posts

Ajuda com este erro, ele aconteceu quando ei fazer um teste de inserçao de dados ai esta o exemplo e o erro:

        include_once  APPLICATION_PATH . '/models/Clientes.php';
        $clientes = new Clientes();
        $clientes->insert(array("cpf"=>"65f465as4f654as6", "senha"=>"654f6a4f64as"));

Exception information:

Message: SQLSTATE[08006] [7] invalid connection option "adapter"
Stack trace:

#0 C:\Program Files\Apache2.2\htdocs\ZF\library\Zend\Db\Adapter\Pdo\Pgsql.php(87): Zend_Db_Adapter_Pdo_Abstract->_connect()
#1 C:\Program Files\Apache2.2\htdocs\ZF\library\Zend\Db\Adapter\Abstract.php(832): Zend_Db_Adapter_Pdo_Pgsql->_connect()
#2 C:\Program Files\Apache2.2\htdocs\ZF\library\Zend\Db\Adapter\Pdo\Pgsql.php(171): Zend_Db_Adapter_Abstract->quote('clientes')
#3 C:\Program Files\Apache2.2\htdocs\ZF\library\Zend\Db\Table\Abstract.php(823): Zend_Db_Adapter_Pdo_Pgsql->describeTable('clientes', NULL)
#4 C:\Program Files\Apache2.2\htdocs\ZF\library\Zend\Db\Table\Abstract.php(866): Zend_Db_Table_Abstract->_setupMetadata()
#5 C:\Program Files\Apache2.2\htdocs\ZF\library\Zend\Db\Table\Abstract.php(1024): Zend_Db_Table_Abstract->_setupPrimaryKey()
#6 C:\Program Files\Apache2.2\htdocs\ZF\application\modules\default\controllers\IndexController.php(16): Zend_Db_Table_Abstract->insert(Array)
#7 C:\Program Files\Apache2.2\htdocs\ZF\library\Zend\Controller\Action.php(513): IndexController->indexAction()
#8 C:\Program Files\Apache2.2\htdocs\ZF\library\Zend\Controller\Dispatcher\Standard.php(289): Zend_Controller_Action->dispatch('indexAction')
#9 C:\Program Files\Apache2.2\htdocs\ZF\library\Zend\Controller\Front.php(946): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http))
#10 C:\Program Files\Apache2.2\htdocs\ZF\library\Zend\Application\Bootstrap\Bootstrap.php(77): Zend_Controller_Front->dispatch()
#11 C:\Program Files\Apache2.2\htdocs\ZF\library\Zend\Application.php(358): Zend_Application_Bootstrap_Bootstrap->run()
#12 C:\Program Files\Apache2.2\htdocs\ZF\public\index.php(24): Zend_Application->run()
#13 {main} 

Compartilhar este post


Link para o post
Compartilhar em outros sites

posta o seu application.ini ai ou você está usando FACTORY?

Compartilhar este post


Link para o post
Compartilhar em outros sites

posta o seu application.ini ai ou você está usando FACTORY?

 

Cara esta aqui o restante do codigo para voce entender!!!

 

E postgres, mas pelo que olhei na documentaçao nao achei nada nao!!!

Olha o começo do codigo:

$db = Zend_Db::factory( $config->db->adapter, $config->db);
    Zend_Db_Table_Abstract::setDefaultAdapter($db);

Classe clientes

class Clientes extends Zend_Db_Table_Abstract{
     protected $_name = "clientes";
 }

No insert so aceita um atributo, e nao dois pelo que eu vi na documentaçao mas la tambem esta assim:

$data = array(
    'created_on'      => '2007-03-22',
    'bug_description' => 'Something wrong',
    'bug_status'      => 'NEW'
);

$db->insert('bugs', $data);

Entao se voce puder me ajudar??? Fico agradecido!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Versão do seu ZF.

Posta seu Application.ini.

Posta seu Model.

Posta seu Controller.

 

Flw

Compartilhar este post


Link para o post
Compartilhar em outros sites

O problema acredito estar no seu factory.

 

Experimente mudá-lo para:

 

$db = Zend_Db :: factory( $options );

Onde $options é o "índice pai" do array que o Zend_Config interpeta como sendo do Banco de Dados. Na minha aplicação uso assim:

 

$settings = array( 'DB' => array(
                                  'adapter' => PDO_MYSQL,
                                  'params' => array(
                                      'host' => 'localhost',
                                      'username' => 'usuario',
                                      'password' => 'senha',
                                      'dbname' => 'banco'
                                    )
                                )
                     );

Esse é apenas um trecho, pois você pode ter, depois disso, opções de prefixo, opções de driver, cacheamento de meta informações e etc.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.