Php 社交引擎从数据库中获取数据并打印出来

Php 社交引擎从数据库中获取数据并打印出来,php,zend-framework,zend-db,socialengine,Php,Zend Framework,Zend Db,Socialengine,我试图在SE4中创建一个模块,并遵循了一个教程(),但似乎无法在视图中打印数据库输出。以下是代码: 数据库转储,我使用engine4_uu前缀,因为我的所有其他表都是这样命名的 -- phpMyAdmin SQL Dump -- version 2.11.11.3 -- http://www.phpmyadmin.net -- -- Host: localhost -- Generation Time: Aug 14, 2012 at 11:32 AM -- Server version: 5.

我试图在SE4中创建一个模块,并遵循了一个教程(),但似乎无法在视图中打印数据库输出。以下是代码:

数据库转储,我使用engine4_uu前缀,因为我的所有其他表都是这样命名的

-- phpMyAdmin SQL Dump
-- version 2.11.11.3
-- http://www.phpmyadmin.net
--
-- Host: localhost
-- Generation Time: Aug 14, 2012 at 11:32 AM
-- Server version: 5.5.23
-- PHP Version: 5.3.14

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";

--
-- Database: `xyzeljubko`
--

-- --------------------------------------------------------

--
-- Table structure for table `engine4_zki_pitanja`
--

CREATE TABLE IF NOT EXISTS `engine4_zki_pitanja` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `test` varchar(20) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;

--
-- Dumping data for table `engine4_zki_pitanja`
--

INSERT INTO `engine4_zki_pitanja` (`id`, `test`) VALUES
(1, 'Stringcina');
我的模块名为
zki
,下面是我创建的两个模型,
/zki/models/pitanje.php

<?php 
    class Zki_Model_Pitanje extends Core_Model_Item_Abstract
    {
        protected $_owner_type = 'user';
    }
?>
对于controller,这里是
Zki/Controllers/pitanjeconcontroller.php

<?php 

    class Zki_PitanjeController extends Core_Controller_Action_Standard
    {
        public function indexAction()
        {
            // default action
        }

        public function viewtestAction()
        {
            // uzmi tabelu
            // getDbTable(TABLENAME, MODULENAME);
            $table = Engine_Api::_()->getDbTable('pitanja', 'zki');

            // neki filtering, select i to
            // docs: http://framework.zend.com/manual/en/zend.db.select.html
            $select = $table->select(); // ->where("user_id = $id", 1)->order('creation_date');

            // dohvati podatke
            $result = $table->fetchAll($select);
            $this->view->pitanja = $result;
        }
    }
?>
但似乎不起作用。我不知道如何调试这个问题,但似乎是微不足道的。有人能帮我认识到我在这件事上哪里没有错吗

  • 您是否已将
    id
    列设为主要列
  • 文件名应以大写字母开头
  • 检查日志(控制面板>统计信息>日志浏览器)中是否有错误
  • id
    是主要的(请参阅sql转储),但我忘了大写!谢谢!
    <?php 
    
        class Zki_PitanjeController extends Core_Controller_Action_Standard
        {
            public function indexAction()
            {
                // default action
            }
    
            public function viewtestAction()
            {
                // uzmi tabelu
                // getDbTable(TABLENAME, MODULENAME);
                $table = Engine_Api::_()->getDbTable('pitanja', 'zki');
    
                // neki filtering, select i to
                // docs: http://framework.zend.com/manual/en/zend.db.select.html
                $select = $table->select(); // ->where("user_id = $id", 1)->order('creation_date');
    
                // dohvati podatke
                $result = $table->fetchAll($select);
                $this->view->pitanja = $result;
            }
        }
    ?>
    
    <?php 
        foreach($this->pitanja as $pitanje) {
            echo 'Id pitanja: ' . $pitanje->id . ' and test string is ' . $pitanje->test . '. Endline. <br/>';
        }
    ?>