Home > Article > Backend Development > 分享ThinkPHP3.2中关联查询解决思路,thinkphp3.2思路_PHP教程
不废话了,直接给大家贴代码了,代码很简单,都是比较常见的sql语句,具体内容请看下文。
CREATE TABLE `test_avatar` ( `uid` int(11) unsigned NOT NULL DEFAULT '0', `avatar` varchar(255) NOT NULL DEFAULT '', PRIMARY KEY (`uid`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; INSERT INTO `test_avatar` VALUES (1,'./Uploads/admin.jpg'); CREATE TABLE `test_pro` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `uid` int(11) unsigned NOT NULL DEFAULT '0', `name` varchar(255) NOT NULL DEFAULT '', PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; INSERT INTO `test_pro` VALUES (1,1,'产品1'),(2,1,'产品2'); CREATE TABLE `test_user` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `username` varchar(50) NOT NULL DEFAULT '', `tel` int(11) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; INSERT INTO `test_user` VALUES (1,'admin',110);
如上三个表:用户头像表、产品表、用户表
怎样在模型中建立关联?
class ProModel extends RelationModel{ protected $_link=array( 'Avatar'=>array( 'mapping_type'=>self::HAS_ONE, 'class_name'=>'Avatar', 'foreign_key'=>'uid', 'mapping_fields'=>'avatar', 'as_fields'=>'avatar', ), ) }
试过用HAS_ONE、BELONGS_TO、HAS_MANY、MANY_TO_MANY都不行,求大神指点
------解决思路----------------------
Model下建立ProModelModel.class.php
class ProModelModel extends ViewModel { public $viewFields = array( 'test_avatar'=>array( 'id',... ), 'test_pror'=>array( 'id',... '_on'=>'' ), 'test_pror'=>array( 'id',... '_on'=>'' ), ); }
Thinkphp中SQL语句有关问题及解决办法
请问,在THINKPHP中,数据表里有个字段,字段的内容形式为 {1,2,3,4,5}
那么SQL语句里怎么将获得的ID值来跟字段里的内容来比较呢
------解决思路----------------------
用模糊查询吧
$where = array('该字段'=>array('LIKE', '%' . $ID . '%'));