2012-11-04 43 views
0

我遇到了一个问题,如果我执行$this->Model->find('all')如果我使用更具体的数据搜索(例如$this->Model->find('all', array('conditions' => array('Model.column LIKE' => $search))),我无法获得任何返回的数据我可以获取该搜索返回的一些值但不是所有能够被搜索到的。示例如果我这样做:$this->Model->find('all', array('conditions' => array('Model.column LIKE' => 1))我得到所有包含指定列的值为1的行的返回值。如果我将其更改为2,那么即使有Model.column列的值为2,我也会得到空值。这实际上让我现在疯了,因为我已经在Cake上建了很多站点,并且MySQL在日志中没有返回任何错误。这里是我有工作,以及我的DB设置代码:CakePHP中的数据库没有得到数据返回

MySQL表:

CREATE TABLE IF NOT EXISTS `tbl_cleps_subjects` (
    `id` int(11) NOT NULL AUTO_INCREMENT, 
    `subject` int(1) NOT NULL, 
    `credits` int(1) NOT NULL, 
    `course` varchar(255) NOT NULL, 
    `extract` text NOT NULL, 
    `factsheet` varchar(255) NOT NULL, 
    `study_guide` text NOT NULL, 
    PRIMARY KEY (`id`) 
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=34 ; 

型号:

class ClepsSubject extends AppModel { 

} 

控制器:

class ClepsController extends AppController { 

    public $uses = array('ClepsSubject'); 

    public function index() { 
     $this->set('return', $this->ClepsSubject->find('all')); 
    } 

} 

控制器查看:

<?php debug($return); ?> 

就像我说的那样,我的头撞在墙上这个任何帮助将不胜感激。

+0

fetch_array功能发布,是由蛋糕产生的检索数据 –

+0

就像上面说的sql查询,我们需要蛋糕生成的SQL查询。我的猜测是你正在使用一个带整数的LIKE查询,并且Cake试图首先将你的整数转换为字符串,因为它没有;使用LIKE和一个整数很有意义 – Wa0x6e

回答

-1
+0

你能改进你正在尝试建议的内容吗? – Fuhrmann

+0

我能够通过复制一个单独的表并导入值来创建一个新表来解决这个问题。这使我相信在创建表时MySQL发生了错误,并且这是MySQL和CakePHP没有收到的错误和错误。我正在经历一切,并试图找出这个问题,以便我可以将答案留给任何可能遇到类似问题的人。 – Cameeob2003