模型使用相关技巧

模型使用相关技巧
1、前台发布投稿,如何设置发布后返回指定页面?
(1)、投稿表单加提交后返回地址变量:ecmsfrom
ecmsfrom变量值有三种方式:
1、如果不设置则返回系统默认的地址;
2、如果值为9,那么返回的是提交地址,系统自动识别;
3、如果设置除了9以外其它值,将返回变量值的地址。
例子:<input type="hidden" name="ecmsfrom" value="http://www.phome.net">

(2)、如果是设置增加投稿后返回内容页,则在投稿表单中加:<input type="hidden" name="gotoinfourl" value="1">
(3)、如果是设置修改投稿后返回内容页,则在投稿表单中加:<input type="hidden" name="editgotoinfourl" value="1">

2、字段处理函数使用:
帝国CMS功能解密之字段处理函数:http://bbs.phome.net/showthread-13-116152-0.html

3、如何单独制作投稿页面,不用系统默认的:
做个HTML表单,表单含原信息投稿的字段变量(含classid/id/enews/字段等变量)即可,且表单的action指向/e/DoInfo/ecms.php就可以(action="/e/DoInfo/ecms.php")。

4、如何记录发布者IP
增加“infoip”字段,infoip为记录IP的字段,只需将字段设置为录入项或投稿项,增加信息时自动存储发布者IP,字段类型用VARCHAR、长度15。

5、如何制作字母导航
增加“infozm”字段,infozm为取得标题字母的字段,只需将字段设置为录入项或投稿项,增加或修改信息时自动存储标题第一个拼音字母,字段类型用VARCHAR、长度1。

列表页调用字母导航有以下两种方法:
1、增加26个字母的自定义列表导航页;
2、还有一种就是用结合项做导航,比如:/e/action/ListInfo.php?mid=系统模型ID&ph=1&infozm=A

6、限制一个注册用户在某一个特定栏目只能发布一条信息?
建个会员ID字段,比如mymemberid,字段类型int,设置值唯一
字段的投稿表单替换html代码:
<input name="mymemberid" type="hidden" value="<?=$ecmsfirstpost==1?$memberinfor[userid]:DoReqValue($mid,'mymemberid',stripSlashes($r[mymemberid]))?>" size="">

7、什么时候把字段放在主表或副表?
字段不在列表页或标签中调用的最好都放到副表,主表字段越少效率越高。

8、投稿表单如何自动获取会员注册资料里面的内容呢?
修改字段,设置字段初始值为:$memberinfor[会员字段名],比如:$memberinfor[oicq]