我试图创建我的owne函数来使用zend框架将数据添加到我的数据库。但是我与数据库的连接有问题。 PS:我不会在类Zend_Db_Table_Abstract中使用默认函数,我不会创建自己的函数来访问我的数据库。 我只想使用Zend_Db来完成连接。使用zendframework连接到数据库
这里是我的配置:
的application.ini:
database.adapter = PDO_MYSQL
database.params.host = localhost
database.params.username = root
database.params.password = ''
database.params.dbname = user
的index.php:
// Chargement automatique de Zend_Db_Adapter_Pdo_Mysql, et instanciation.
$config = new Zend_Config_Ini(APPLICATION_PATH . '/configs/application.ini', 'production');
$db = Zend_Db::factory($config->database->adapter,array(
'host' => $config->database->params->host,
'username' => $config->database->params->username,
'password' => $config->database->params->password,
'dbname' => $config->database->params->dbname,
)
);
// placons la connexion dans un registre global à l'application
$registry = Zend_Registry::getInstance();
$registry->set('db', $db);
// en faire la connexion par defaut
Zend_Db_Table::setDefaultAdapter($db);
Zend_Registry::set('dbAdapter', $db);
而我的作用是:
public function SaveClient() {
$sqlInsert = "INSERT INTO user VALUES ('".$this->getid()."','".$this->getprenom()."','".$this->getnom()."','".$this->getnele()."','". $this->getville()."')";
}
最后的行动:
public function indexAction()
{
$user=new UserClass();
$user->setid(2);
$user->setnele(fevrier);
$user->setnom(mhamdi);
$user->setprenom(marwa);
$user->setville(bizerte);
$result=$user->SaveClient();
$this->view->add_result =var_dump($result) ;
}
什么是与连接问题?你是否遇到异常或特定的错误?您也非常接近使用“表格数据网关”和行数据网关模式,而无需实际使用它们。请参阅Zend_Db_Table中的[插入数据](http://framework.zend.com/manual/en/zend.db.table.html#zend.db.table.insert),以获得更好的插入方式。如果你还没有,你可能想看看[Quickstart - Creating a model and dbtable](http://framework.zend.com/manual/en/learning.quickstart.create-model.html)。 – drew010 2012-03-02 20:04:28
没有我没有得到错误,但我不能将信息插入数据库,所以它可能是由于连接,因为查询是正确的。 – 2012-03-02 20:10:13
我确定我不明白,但为什么在index.php中的工厂连接,而不是在Bootstrap?在你的application.ini应该不是数据库参数是“resources.db”而不是“数据库”? – RockyFord 2012-03-04 08:06:02