Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/273.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何使用字段获取Zend模型_Php_Zend Framework - Fatal编程技术网

Php 如何使用字段获取Zend模型

Php 如何使用字段获取Zend模型,php,zend-framework,Php,Zend Framework,我有一个如下所示的数据库表: CREATE TABLE IF NOT EXISTS `articles` ( `id` int(11) NOT NULL AUTO_INCREMENT, `texte` varchar(255) NOT NULL, `rubrique` varchar(255) NOT NULL, PRIMARY KEY (id) ); class Application_Model_DbTable_Articles extends Zend_Db_Ta

我有一个如下所示的数据库表:

  CREATE TABLE IF NOT EXISTS `articles` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `texte` varchar(255) NOT NULL,  
  `rubrique` varchar(255) NOT NULL,
  PRIMARY KEY (id)
);
class Application_Model_DbTable_Articles extends Zend_Db_Table_Abstract
{
    protected $_name = 'articles';

   //this is where I have a problem 
   public function getArticleByRubrique($rubrique) 
    {        
        $row = $this->fetchRow('rubrique = ' . $rubrique);    
        return $row->toArray();    
    }  

}
$articles = new Application_Model_DbTable_Articles();
$this->view->articles = $articles->fetchAll('rubrique = "club"');
哪个PDO映射如下:

  CREATE TABLE IF NOT EXISTS `articles` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `texte` varchar(255) NOT NULL,  
  `rubrique` varchar(255) NOT NULL,
  PRIMARY KEY (id)
);
class Application_Model_DbTable_Articles extends Zend_Db_Table_Abstract
{
    protected $_name = 'articles';

   //this is where I have a problem 
   public function getArticleByRubrique($rubrique) 
    {        
        $row = $this->fetchRow('rubrique = ' . $rubrique);    
        return $row->toArray();    
    }  

}
$articles = new Application_Model_DbTable_Articles();
$this->view->articles = $articles->fetchAll('rubrique = "club"');
在我看来,我想获取包含字段
rubrique==“club”
文章:

  CREATE TABLE IF NOT EXISTS `articles` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `texte` varchar(255) NOT NULL,  
  `rubrique` varchar(255) NOT NULL,
  PRIMARY KEY (id)
);
class Application_Model_DbTable_Articles extends Zend_Db_Table_Abstract
{
    protected $_name = 'articles';

   //this is where I have a problem 
   public function getArticleByRubrique($rubrique) 
    {        
        $row = $this->fetchRow('rubrique = ' . $rubrique);    
        return $row->toArray();    
    }  

}
$articles = new Application_Model_DbTable_Articles();
$this->view->articles = $articles->fetchAll('rubrique = "club"');
要获取所有项目,此代码可以使用
fetchAll()

但是当我使用
getArticleByRubrique()
执行此操作时,会出现以下错误:

SQLSTATE[42S22]:未找到列: 1054“where”中的未知栏“club” 条款'


您仍然可以使用
fetchAll()
来完成此项工作,而无需编写方法来完成此项工作:

在控制器的操作中:

  CREATE TABLE IF NOT EXISTS `articles` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `texte` varchar(255) NOT NULL,  
  `rubrique` varchar(255) NOT NULL,
  PRIMARY KEY (id)
);
class Application_Model_DbTable_Articles extends Zend_Db_Table_Abstract
{
    protected $_name = 'articles';

   //this is where I have a problem 
   public function getArticleByRubrique($rubrique) 
    {        
        $row = $this->fetchRow('rubrique = ' . $rubrique);    
        return $row->toArray();    
    }  

}
$articles = new Application_Model_DbTable_Articles();
$this->view->articles = $articles->fetchAll('rubrique = "club"');