0

I am try to do database connection in zend framework

Below is my application.ini

[production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
includePaths.library = APPLICATION_PATH "/../library"
bootstrap.path = APPLICATION_PATH "/Bootstrap.php"
bootstrap.class = "Bootstrap"
appnamespace = "Application"
resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"
resources.frontController.params.displayExceptions = 1
database.adapter            =   pdo_mysql
database.params.host        =   localhost
database.params.username    =   root
database.params.password    =   
database.params.dbname      =   test
resources.db.isDefaultTableAdapter = true

[staging : production]

[testing : production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1

[development : production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
resources.frontController.params.displayExceptions = 1 

Getting below error

Message: No adapter found for Application_Model_DbTable_User
Stack trace:

#0 D:\xampp\php\pear\Zend\Db\Table\Abstract.php(739): Zend_Db_Table_Abstract->_setupDatabaseAdapter()
#1 D:\xampp\php\pear\Zend\Db\Table\Abstract.php(268): Zend_Db_Table_Abstract->_setup()
#2 D:\xampp\htdocs\test\application\controllers\IndexController.php(14): Zend_Db_Table_Abstract->__construct()
#3 D:\xampp\php\pear\Zend\Controller\Action.php(516): IndexController->indexAction()
#4 D:\xampp\php\pear\Zend\Controller\Dispatcher\Standard.php(295): Zend_Controller_Action->dispatch('indexAction')
#5 D:\xampp\php\pear\Zend\Controller\Front.php(954): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http))
#6 D:\xampp\php\pear\Zend\Application\Bootstrap\Bootstrap.php(97): Zend_Controller_Front->dispatch()
#7 D:\xampp\php\pear\Zend\Application.php(366): Zend_Application_Bootstrap_Bootstrap->run()
#8 D:\xampp\htdocs\test\public\index.php(26): Zend_Application->run()
#9 {main}  

Request Parameters:

array (
  'controller' => 'index',
  'action' => 'index',
  'module' => 'default',
)  

any more changes is required for connection?

2 Answers 2

3

I Think you need need add "resource " and put values between " ".

resources.db.adapter = "pdo_mysql"
resources.db.params.host = "localhost"
resources.db.params.port = 3306
resources.db.params.username = "root"
resources.db.params.password = ""
resources.db.params.dbname = "test"
resources.db.isDefaultTableAdapter = true

And to call your Adapter ( inside your classes )

$db = Zend_Db_Table::getDefaultAdapter();
 // Example of selcting all contacts from the database 
$contacts = $db->fetchAll("SELECT * FROM contacts ");

hope it helps.

Sign up to request clarification or add additional context in comments.

Comments

1

Try changing your INI file to:

resources.db.adapter            =   pdo_mysql
resources.db.params.host        =   localhost
resources.db.params.username    =   root
resources.db.params.password    =   
resources.db.params.dbname      =   test

2 Comments

you mean to say resources.db.isDefaultTableAdapter = true i need to remove this line
I meant change "database.XXX" to "resources.db.XXX"

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.