首先去xoops中文网下载framework类库 http://xoops.org.cn/modules/wfdownloads/singlefile.php?cid=1&lid=640
其次: 在自己的打印页面添加打印链接地址,例如打印 在transfer.php文件中需要设置一个数组参数$date
$data = array();
$data["res_id"] = $res_id;
$data["uid"] = $uid;
$data["class_id"] = $class_id;
$data["url"] = XOOPS_URL . "/modules/grade/select.php?class_id=" . $class_id . "&uid=" . $uid . "&res_id=" . $res_id;
在xoops的Frameworks类库中提供了工具的插件,所以在引用工具时,需要设置OP的选项,打印的op设置为print
在该文件内引入了include XOOPS_ROOT_PATH . "/Frameworks/transfer/action.transfer.php"; transfer.php
参考代码: $op = isset($_REQUEST['op']) ? $_REQUEST['op'] : (isset($_REQUEST['res_id']) ? 'detail' : 'display');
$class_id = isset($_REQUEST['class_id']) ? $_REQUEST['class_id'] : '';
$uid = isset($_REQUEST['uid']) ? $_REQUEST['uid'] : '';
$class_handler =& xoops_getmodulehandler('class', 'grade');
$data = array();
$data["res_id"] = $res_id;
$data["uid"] = $uid;
$data["class_id"] = $class_id;
$data["url"] = XOOPS_URL . "/modules/grade/select.php?class_id=" . $class_id . "&uid=" . $uid . "&res_id=" . $res_id;
switch ($op) {
default:
case "print":
$class_obj = $class_handler->get($class_id);
if(!is_object($class_obj)) redirect_header('index.php', 3, _MA_GRADE_NOTCLASSINFO);
$res_object = $results_handler->get($res_id);
if(!is_object($res_object)) redirect_header('index.php', 3, _MA_GRADE_NOTRESULT);
$result = $res_object->getValues(); $criteria = new CriteriaCompo();
$criteria->add(new Criteria('class_id', $class_id), 'AND');
$criteria->add(new Criteria('uid', $user['uid']));
if(!$relation_handler->getCount($criteria)) redirect_header('index.php', 3, _MA_GRADE_BACKDETAIL);
$data["title"] = 'title';
$data["author"] = 'author';
$data["date"] = formatTimestamp(time());
$data["content"] = '';
${"{$op}_data"} = & $data;
break;
}
include XOOPS_ROOT_PATH . "/Frameworks/transfer/action.transfer.php";
exit();
最后设置打印页面print.php
print.php代码参考:
error_reporting(0);
include 'header.php';
error_reporting(0);
global $xoopsLogger;
$xoopsLogger->activated = false;
//查询数据库,将需要打印的数据获取,并在下方html部分输出
echo "<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN'>/n";
echo "<html>/n<head>/n";
echo "<title>" . htmlspecialchars($xoopsConfig['sitename']) . "</title>/n";
echo "<meta http-equiv='Content-Type' content='text/html; charset=" . _CHARSET . "' />/n";
echo "<meta name='AUTHOR' content='" . htmlspecialchars($xoopsConfig['sitename'], ENT_QUOTES) . "' />/n";
echo "<meta name='COPYRIGHT' content='Copyright (c) " . date('Y') . " by " . htmlspecialchars($xoopsConfig['sitename'], ENT_QUOTES) . "' />/n";
echo "<meta name='DESCRIPTION' content='" . htmlspecialchars($xoopsConfig['slogan'], ENT_QUOTES) . "' />/n";
echo "<meta name='GENERATOR' content='" . XOOPS_VERSION . "' />/n/n/n";
echo '
<link rel="stylesheet" type="text/css" media="all" title="Style sheet" href="'.XOOPS_URL.'/xoops.css" />
<link rel="stylesheet" type="text/css" media="all" title="Style sheet" href="'.XOOPS_URL.'/themes/default/style.css" />
';
echo "</head>/n/n/n";
echo "<body bgcolor='#ffffff' text='#000000' οnlοad='window.print()'>";
echo "打印内容";
echo "</body>/n</html>/n";