12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
ADADADADAD
建站问答 时间:2025-04-25 08:01:51
作者:文/会员上传
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
说到结合项筛选,官方已有提供一种方法,但是的话就是比较繁琐,下面介绍用控制变量来实现这个功能,这个带首字母筛选的。重点修改前;先备份,先备份,先备份。
内容有的多,优点是配置好
以下为本文的正文内容,内容仅供参考!本站为公益性网站,复制本文以及下载DOC文档全部免费。
说到结合项筛选,官方已有提供一种方法,但是的话就是比较繁琐,下面介绍用控制变量来实现这个功能,这个带首字母筛选的。
重点修改前;先备份,先备份,先备份。
内容有的多,优点是配置好后,后面添加修改比较方便。
1:在系统变量里面,添加一个变量-变量的值-多个用逗号隔开; 这里的值就是后面要筛选的筛选名称如图:
2:在数据表推荐两个要适用到的字段,分别是选项字段和控制变量里面的变量名一致;字母筛选的话随便都可以: 在添加字段要修改 输入表单替换html代码,必须先默认提交在回来来修改,才会生效如图:
首字母的话 直接添加默认即可。
下面部分是输入表单显示元素,复选框,单选框和下拉的表单替换html代码。
复选框代码
<?$p_screen=explode(",",$public_r['add_screen']); for($i=0;$i<count($p_screen);$i++) {$j=$i+1;?><input name="screen[]" type="checkbox" value="<?=$j?>"<?=strstr($r[screen],"|".$j."|")?' checked':''?>><?=$p_screen[$i]?><?}?>
单选框的写法
<?$p_screen=explode(",", $public_r['add_screen']);for($i=0; $i<count($p_screen); $i++) { $j = $i+1;?><input name="screen" type="radio" value="<?=$j?>"<?= $r['screen'] == (string)$j ? ' checked' : ''?>><?=$p_screen[$i]?><? } ?>
下拉选择
<?$j=0;$p_diqu=explode(",",$public_r['add_xiala']); for($i=0;$i<count($p_diqu);$i++) {$j=$i+1;$diqu_selected='';if ($r[diqu]==$j){$diqu_selected=' selected';}$diqu.='<option value="'.$j.'"'.$diqu_selected.'>'.$p_diqu[$i].'</option>';}?><select name="xiala" id="xiala"><?=$diqu?></select>
2-1:添加好字段后要在-系统模型-修改里面,把字段项选择上,尤其筛选项必须选择-然后点录入表单模板
( 自动生成表单模板) 提交;
3:在eclassuserfun.php搭建下面的代码:字段和变量名填写自己开始写哪个。
function user_screen($id){ global $public_r; $pd_record=explode(",",$public_r['add_screen']); return $pd_record[$id-1];}
4:在模板里面调用
4-1:首页和内容或其他栏目可以这样写:
<? $p_ticai=explode(",",$public_r['add_screen']); for($i=0;$i<count($p_ticai);$i++) { $j=$i+1;?> <li><a href="/list-1-<?=$j?>-0-0-0"><?=$p_screen[$i]?></a></li><? }?>
4-2:在列表里面这样写,首页为了方便修改可以单独建一个列表模板:
列表模板的最开始这样写:
<?$classid=(int)$GLOBALS[navclassid];$screen=(int)$_GET['screen'];$zm=$_GET['zm']?$_GET['zm']:'0';$orderby=(int)$_GET['orderby'];$ticaitile=user_screen($screen);?>
然后需要显示的地方:
<dt>筛选:</dt> <li><a<?if (!$screen){?> class="active"<?}?> href="/list-<?=$classid?>-0-<?=$zm?>-<?=$orderby?>-0">全部</a></li><? $p_screen=explode(",",$public_r['add_screen']); for($i=0;$i<count($p_screen);$i++) { $j=$i+1;?> <li><a<?if ($screen==$j){?> class="active"<?}?> href="/list-<?=$classid?>-<?=$j?>-<?=$zm?>-<?=$orderby?>-0"><?=$p_screen[$i]?></a></li><? }?>
字母筛选代码:
<dt>字 母:</dt> <li><a<?if (!$zm){?> class="active"<?}?> href="/list-<?=$classid?>-<?=$screen?>-0-<?=$orderby?>-0" >全部</a></li><? $p_zm=explode(",","A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z"); for($i=0;$i<count($p_zm);$i++) {?> <li><a<?if ($zm==$p_zm[$i]){?> class="active"<?}?> href="/list-<?=$classid?>-<?=$screen?>-<?=$p_zm[$i]?>-<?=$orderby?>-0"><?=$p_zm[$i]?></a></li><? }?>
这个包括了选择后的高亮状态 active元素 这个样式自行写即可。
5:标题的调用和优化;可以按照这样来写:
<title><?=$ticaitile?>-[!--list.pageno--]<?=$public_r['add_name']?></title>
6:分页的样式和修改:eclassconnect.php搜索 //前台分页 注释或删除,然后换成下面的样式按照原模板来改即可;
//前台分页 列表结合项分页样式function page1($num,$line,$page_line,$start,$page,$search){ global $fun_r; $num=(int)$num; $line=(int)$line; $page_line=(int)$page_line; $start=(int)$start; $page=(int)$page; $classid=(int)$GLOBALS[navclassid]; $screen=(int)$_GET['screen']; $infozm=$_GET['zm']?$_GET['zm']:'0'; $orderby=(int)$_GET['orderby']; if($num<=$line) { return ''; } $search=''; $url='/list-'.$classid.'-'.$screen.'-'.$zm.'-'.$orderby; $snum=2;//最小页数 $totalpage=ceil($num/$line);//取得总页数 //$firststr='<a title="'.$fun_r['trecord'].'"> <b>'.$num.'</b> </a>'; //上一页 if($page<>0) { $toppage='<li><a href="'.$url.'-0'.$search.'"><<</a></li>'; $pagepr=$page-1; $prepage='<li><a href="'.$url.'-'.$pagepr.$search.'"><</a></li>'; } //下一页 if($page!=$totalpage-1) { $pagenex=$page+1; $nextpage='<li><a href="'.$url.'-'.$pagenex.$search.'">></a></li>'; $lastpage='<li><a href="'.$url.'-'.($totalpage-1).$search.'">>></a></li>'; } $starti=$page-$snum<0?0:$page-$snum; $no=0; for($i=$starti;$i<$totalpage&&$no<$page_line;$i++) { $no++; if($page==$i) { $is_1='<a href="'.$url.'-'.$i.$search.'" class="active">'; $is_2="</a>"; } else { $is_1='<li><a href="'.$url.'-'.$i.$search.'">'; $is_2="</a></li>"; } $pagenum=$i+1; $returnstr.=$is_1.$pagenum.$is_2; } $returnstr=$firststr.$toppage.$prepage.$returnstr.$nextpage.$lastpage; return $returnstr;}
最后一步就是伪静态的配置:这里解释一下:List.php文件放到根目录下/e/action/ 不会冲突直接复制即可(已打包自行下载)
11-20
11-19
11-20
11-20
11-20
11-19
11-20
11-20
11-19
11-20
11-19
11-19
11-19
11-19
11-19
11-19