我制作了一个简单菜单结构的模块。我能够以编程方式检索PHP中所有学生的视图。现在,我想在一个简单的表格中返回页面上的所有学生。
表的结构是
UGhentID姓名学生名字学生位置学生
12874749史密斯尼克纽约 。 。
答案 0 :(得分:16)
如果要创建新页面,则需要在模块中使用hook_menu。
例如:
/**
* Implementation of hook_menu.
*/
function mymodule_menu() {
$items = array();
$items['myPage'] = array(
'title' => 'Finances',
'page callback' => 'mymodule_page',
'access callback' => 'user_access',
'access argument' => array('access nodes'),
);
return $items
}
/**
* Page callback
*/
function mymodule_page() {
$output = mymodule_table();
return $output;
}
你可以在这里看到我在页面回调中调用“mymodule_table()”,这是你构建表格的地方。
function mymodule_table() {
$rows = array();
// build the table header
$header = array();
for ($i = 1; $i <= 5; $i++) {
$header[] = array('data' => $i, 'class' => 'header-class');
}
$row = array();
for ($i = 1; $i <= 5; $i++) {
$row[] = array('data' => $i, 'class' => 'row-class');
}
$rows[] = array('data' => $row);
$output .= theme('table', $header, $rows, $attributes = array('class' => 'my-table-class'));
return $output;
}
这应该输出一个表,一个标题是一行一行,有5列。
答案 1 :(得分:4)
我不确定你的'标准页'是什么意思,但我想你可能想看一下示例项目(http://drupal.org/project/examples),特别是page_example模块
对于你的表,Drupal提供了一个非常有用的theme_table函数。在它最简单的形式中,您传递一个标题和行数组,并返回表格的html。
答案 2 :(得分:2)
基于@Haza的回答,这是一个适用于Drupal 7的更新表创建功能:
function mymodule_table() {
$rows = array();
// build the table header
$header = array();
for ($i = 1; $i <= 5; $i++) {
$header[] = array('data' => $i, 'class' => 'header-class');
}
$row = array();
for ($i = 1; $i <= 5; $i++) {
$row[] = array('data' => $i, 'class' => 'row-class');
}
$rows[] = array('data' => $row);
$data = array(
'header' => $header,
'rows' => $rows,
'attributes' => $attributes
);
$output = theme('table', $data);
return $output;
}