数据表关联求助

#1 smseo

说明

表有 关键字表[key]  留言本表[book]  统计表[count]

关键字表[key]字段
k_id         ----自动增加
k_name

====测试数据===
K_id           K_name
  1               中国
  2               美国
  3               英国

留言本表[book]字段
b_id     ----自动增加
k_id     ----关键字表的id
b_title  ----留言标题
b_date  ----留言时间
b_word  ----留言内容

====测试数据===
b_id         K_id        b_title             b_date                             b_word
1              1          中国人      2011-1-1 12:00:00               我是中国人
2              1          美国人      2011-1-1 12:10:00               我是美国人
3              2          美国人a      2011-1-1 12:10:00              我是美国人tom
4              3          英国人      2011-1-1 12:10:00                我是英国人



统计表[count]字段
c_id        ----自动增加
k_id       ----关键字表的id
c_date    ----统计日期
c_num    ----浏览数

====测试数据===


c_id          k_id           c_date               c_num
  1              1            2011-1-1               10
  2              1            2011-1-2               110
  3              1            2011-1-3               1110
  4              2            2011-1-1               2
  5              2            2011-1-2               20
  6              3            2011-1-1               30

================我想达到的效果==============

[table=50%]
[tr][td]序号[/td][td]关键词[/td][td]留言数[/td][td]浏览数[/td][/tr]
[tr][td]1[/td][td]中国[/td][td]2 [/td][td]1230 [/td][/tr]
[tr][td]2 [/td][td]美国 [/td][td]1[/td][td]22 [/td][/tr]
[tr][td]3[/td][td]英国 [/td][td]1[/td][td]30[/td][/tr]
[/table]
========== 多了就翻页显示 ==========

这如何用 数据表关联 写出!

2011-10-28 22:22:53

#2 smseo

尝试用 一表关联多表
  lib_key.php


class lib_key extends spModel
{
  var $pk = "k_id"; // 每个留言唯一的标志,可以称为主键
  var $table = "key"; // 数据表的名称





        var $linker = array(
                              'test1' => array(
                                        'type' => 'hasone',   // 一对一关联,
                                        'map' => 'test1',    // 关联的标识
                                        'mapkey' => 'k_id',  // 关联的字段
                                        'fclass' => book', // 对应表的数据类
                                               'fkey' => 'k_id', // 对应表的关联字段
                                        'enabled' => true
                                                            ),
                'test2' => array(
                                'type' => 'hasmany',   // 一对多关联,
                                'map' => 'test2',    // 关联的标识
                                'mapkey' => 'k_id',  // 关联的字段
                                'fclass' => tj', // 对应表的数据类是
                                'fkey' => 'k_id', // 对应表的关联字段
                                'enabled' => true
                ),
);


}





index.php c=main a=list 的代码如下:




function list(){

$lib_key = spClass("lib_key");
$result = $lib_key->spLinker()->findAll(); // 和上例一样的查找
  dump($result);

}





出现如下错误:

book类定义不存在,请检查

2011-10-28 22:48:45

#3 jake

不存在就是找不到,建议先下载本站例子试验,然后再修改。

2011-10-28 23:26:55

#4 smseo

感谢 jake   这晚回复我的

整出来 因为我的类名称前加了 lib_

没有带上去

2011-10-29 12:12:03