程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> 分享ThinkPHP3.2中關聯查詢解決思路,thinkphp3.2思路

分享ThinkPHP3.2中關聯查詢解決思路,thinkphp3.2思路

編輯:關於PHP編程

分享ThinkPHP3.2中關聯查詢解決思路,thinkphp3.2思路


不廢話了,直接給大家貼代碼了,代碼很簡單,都是比較常見的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 . '%'));

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved