帝国论坛帝国网站管理系统交流区帝国CMS使用交流帝国cms留言板增加自定义字段教程 【本版专题贴子】  
 1/3     1 2 3 ›› ›|
主题:帝国cms留言板增加自定义字段教程 [加入收藏夹]   

sxf2010
用户头衔:秀才

精华贴   :0
发贴数   :40
经验值   :365
注册时间:2010-07-10
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 1 楼]
帝国cms留言板增加自定义字段教程
先发一个效果图,大家可以看看,如果是想要的效果,就接着往下看,如果不需要这种效果就不要浪费各位的时间啦,呵呵,还有这个教程也是从其它地方借签的,然后自己动手做出来的,呵呵
效果参考页面:http://www.wangchuang8.com/e/tool/gbook/?bid=1
开始操作:
注:我在数据库中增加的字段一共有下面几个:ZD_web,ZD_fax,ZD_add,ZD_company,ZD_fangsi,ZD_zhengzhuang,ZD_fuwu
一、在数据库中增加字段。
如果会php程序,而且知道数据库前缀的可以直接在后台的"系统设置"里面"执行sql语句"来建立表字段ZD_web,ZD_fax,ZD_add,ZD_company,ZD_fangsi,ZD_zhengzhuang,ZD_fuwu,因为我对php不熟,而且sql也只会一点点,所以我就用帝国带的"phpmyadmin"来修改数据库

点击左边的wangchuang_enewsgbook 这个表

在这里输入要建立字段的数量,然后执行,这里省下建立字段的图片,如果还是不明白的可以加我QQ:723861002

二、打开e/tool/gbook/下面的index.php文件,在大约50左右的位置找下面这段代码:
$query="select lyid,name,email,`call`,lytime,lytext,retext from {$dbtbpre}enewsgbook where bid='$bid' and checked=0";
替换成
$query="select lyid,name,email,`call`,lytime,lytext,retext,ZD_web,ZD_fax,ZD_add,ZD_company,ZD_fangsi,ZD_zhengzhuang,ZD_fuwu from {$dbtbpre}enewsgbook where bid='$bid' and checked=0";

下面这段是加在form内的,把原form内的替换掉:
<table width="92%" border="0" align="center" cellpadding="4" cellspacing="1"class="tableborder">
                            <tr class="header">
                              <td colspan="2" bgcolor="#F4F9FD"><strong>请您留言:</strong></td>
                            </tr>
                            <tr bgcolor="#FFFFFF">
                              <td width="20%">网站域名:</td>
                              <td width="722" height="23"><input name="ZD_web" type="text" id="ZD_web" />
                                *</td>
                            </tr>
                            <tr bgcolor="#FFFFFF">
                              <td>您的姓名:</td>
                              <td height="23"><input name="name" type="text" id="name" />
                                *</td>
                            </tr>
                            <tr bgcolor="#FFFFFF">
                              <td>电 话:</td>
                              <td height="11"><input name="call" type="text" id="call" /></td>
                            </tr>
                            <tr bgcolor="#FFFFFF">
                              <td>电子邮箱:</td>
                              <td height="-2"><input name="email" type="text" id="email" /></td>
                            </tr>
                            <tr bgcolor="#FFFFFF">
                              <td>传 真:</td>
                              <td height="-1"><input name="ZD_fax" type="text" id="ZD_fax" /></td>
                            </tr>
                            <tr bgcolor="#FFFFFF">
                              <td>通讯地址:</td>
                              <td height="0"><input name="ZD_add" type="text" id="ZD_add" /></td>
                            </tr>
                            <tr bgcolor="#FFFFFF">
                              <td>公司名称:</td>
                              <td height="0"><input name="ZD_company" type="text" id="ZD_company" /></td>
                            </tr>
                            <tr bgcolor="#FFFFFF">
                              <td>报告接收方式:</td>
                              <td height="1"><input id="radio" value="传真" type="radio" name="ZD_fangsi" />
                                传真
                                <label>
                      <input id="radio2" value="电子邮件" checked="checked" type="radio" name="ZD_fangsi" />
                                  电子邮件 </label></td>
                            </tr>
                            <tr bgcolor="#FFFFFF">
                              <td>网站的症状:</td>
                              <td height="2"><input id="ZD_zhengzhuang" value="无流量" type="checkbox" name="ZD_zhengzhuang" />
                                无流量
                                <input id="ZD_zhengzhuang" value="无排名" type="checkbox" name="ZD_zhengzhuang" />
                                无排名
                                <input id="ZD_zhengzhuang" value="无收益" type="checkbox" name="ZD_zhengzhuang" />
                                无收益</td>
                            </tr>
                            <tr bgcolor="#FFFFFF">
                              <td>后续服务: </td>
                              <td height="5"><input id="ZD_fuwu" value="网站优化" type="checkbox" name="ZD_fuwu" />
                                网站优化
                                <input id="ZD_fuwu" value="网站改版" type="checkbox" name="ZD_fuwu" />
                                网站改版</td>
                            </tr>
                            <tr bgcolor="#FFFFFF">
                              <td>其他问题或意见(*):</td>
                              <td height="23"><textarea name="lytext" cols="60" rows="12" id="lytext"></textarea></td>
                            </tr>
                            <tr bgcolor="#FFFFFF">
                              <td height="23">&nbsp;</td>
                              <td height="23"><input type="submit" name="Submit3" value="提交" />
                                  <input name="bid" type="hidden" value="1" />
                                  <input type="reset" name="Submit22" value="重置" />
                                  <input name="enews" type="hidden" id="enews" value="AddGbook" /></td>
                            </tr>
                          </table>

三、打开e/gbook/enews/下面的gbookfun.php文件,在大约12行左右的地方找到以下代码
        $name=RepPostStr(trim($add[name]));
        $email=RepPostStr($add[email]);
        $call=RepPostStr($add[call]);

插入下面的代码:
        $ZD_web=RepPostStr($add[ZD_web]);
        $ZD_fax=RepPostStr($add[ZD_fax]);
        $ZD_add=RepPostStr($add[ZD_add]);
        $ZD_company=RepPostStr($add[ZD_company]);
        $ZD_fangsi=RepPostStr($add[ZD_fangsi]);
        $ZD_zhengzhuang=RepPostStr($add[ZD_zhengzhuang]);
        $ZD_fuwu=RepPostStr($add[ZD_fuwu]);

该文件的大约63行找到下面的代码:
        $sql=$empire->query("insert into {$dbtbpre}enewsgbook(name,email,`call`,lytime,lytext,retext,bid,ip,checked,userid,username,) values('$name','$email','$call','$lytime','$lytext','','$bid','$ip','$br[checked]','$userid','$username');");
替换为:
        $sql=$empire->query("insert into {$dbtbpre}enewsgbook(name,email,`call`,lytime,lytext,retext,bid,ip,checked,userid,username,ZD_web,ZD_fax,ZD_add,ZD_company,ZD_fangsi,ZD_zhengzhuang,ZD_fuwu) values('$name','$email','$call','$lytime','$lytext','','$bid','$ip','$br[checked]','$userid','$username','$ZD_web','$ZD_fax','$ZD_add','$ZD_company','$ZD_fangsi','$ZD_zhengzhuang','$ZD_fuwu');");



四、打开e/data/template下面的gbooktemp.txt文件,约51号找下面的代码:
$query="select lyid,name,email,`call`,lytime,lytext,retext from {$dbtbpre}enewsgbook where bid='$bid' and checked=0";
替换成:
$query="select lyid,name,email,`call`,lytime,ZD_web,ZD_fax,ZD_add,ZD_company,ZD_fangsi,ZD_zhengzhuang,ZD_fuwu,lytext,retext from {$dbtbpre}enewsgbook where bid='$bid' and checked=0";

五、打开e/class下面的functions.php文件,约2934号的位置找下面代码:
        $listtemp_center=str_replace("[!--lyid--]","<?=\$r[lyid]?>",$listtemp_center);
插入下面的代码:
        $listtemp_center=str_replace("[!--ZD_web--]","<?=\$r[ZD_web]?>",$listtemp_center);
        $listtemp_center=str_replace("[!--ZD_fax--]","<?=\$r[ZD_fax]?>",$listtemp_center);
        $listtemp_center=str_replace("[!--ZD_add--]","<?=\$r[ZD_add]?>",$listtemp_center);
        $listtemp_center=str_replace("[!--ZD_company--]","<?=\$r[ZD_company]?>",$listtemp_center);
        $listtemp_center=str_replace("[!--ZD_fangsi--]","<?=\$r[ZD_fangsi]?>",$listtemp_center);
        $listtemp_center=str_replace("[!--ZD_zhengzhuang--]","<?=\$r[ZD_zhengzhuang]?>",$listtemp_center);
        $listtemp_center=str_replace("[!--ZD_fuwu--]","<?=\$r[ZD_fuwu]?>",$listtemp_center);

六、打开e/class下面的functions.php文件,约2108号的位置找下面代码:
        $listtemp=str_replace("[!--retext--]",nl2br($r['retext']),$listtemp);//回复
插入下面的代码:
        $listtemp=str_replace("[!--ZD_web--]",format_datetime($r['ZD_web'],$formatdate),$listtemp);
        $listtemp=str_replace("[!--ZD_fax--]",format_datetime($r['ZD_fax'],$formatdate),$listtemp);
        $listtemp=str_replace("[!--ZD_add--]",format_datetime($r['ZD_add'],$formatdate),$listtemp);
        $listtemp=str_replace("[!--ZD_company--]",format_datetime($r['ZD_company'],$formatdate),$listtemp);
        $listtemp=str_replace("[!--ZD_fangsi--]",format_datetime($r['ZD_fangsi'],$formatdate),$listtemp);
        $listtemp=str_replace("[!--ZD_zhengzhuang--]",format_datetime($r['ZD_zhengzhuang'],$formatdate),$listtemp);
        $listtemp=str_replace("[!--ZD_fuwu--]",format_datetime($r['ZD_fuwu'],$formatdate),$listtemp);

好了,到这里前台的工作就完成了,把这些文件保存后上传到原路径去,在/e/tool/gbook/?bid=1这个页面提交就可以把数据写入数据库了,最后一步就是后台查看留言的页面,如果后面不改的话,提交的东西在后台看不全的哟,呵呵

七、打开e/admin/tool/下面的gbook.php文件
把form内的代码替换成下面的代码:
<?
while($r=$empire->fetch($sql))
{
$br=$empire->fetch1("select bname from {$dbtbpre}enewsgbookclass where bid='$r[bid]'");
//审核
$checked="";
if($r[checked])
{
$checked=" title='未审核' style='background:#99C4E3'";
}
$username="游客";
if($r['userid'])
{
        $username="<a href='../member/AddMember.php?enews=EditMember&userid=".$r['userid']."' target=_blank>".$r['username']."</a>";
}
?>
<table width="700" border="0" align="center" cellpadding="3" cellspacing="1" class=tableborder>
    <tr class=header>
      <td width="55%" height="23">发布者:
        <span style="word-break:break-all">
        <?=$r[ZD_company]?>
        </span>        &nbsp;(<span style="word-break:break-all">
        <?=$r[name]?>
        </span>)</td>  
      <td width="45%">发布时间:
        <?=$r[lytime]?>&nbsp;
        (IP:
        <?=$r[ip]?>) </td>
  </tr>
  <tr bgcolor="#FFFFFF">
    <td height="23" colspan="2"> <table border=0 width=100% cellspacing=1 cellpadding=10 bgcolor='#cccccc'>
        <tr>
          <td width='100%' bgcolor='#FFFFFF' style='word-break:break-all'><strong>网站域名:</strong>
            <?=$r[ZD_web]?>
            <br>
            <strong>通讯地址:</strong>
<?=$r[ZD_add]?>
<br>
<strong>报告接收方式:</strong>
<?=$r[ZD_fangsi]?>
<br>
<strong>网站的症状:</strong>
<?=$r[ZD_zhengzhuang]?>
<br>
<strong>后续服务:</strong>
<?=$r[ZD_fuwu]?>
<br>
<strong>其他问题或意见(*):</strong><?=$r[lytext]?></td>
        </tr>
      </table>
      <table width="100%" border="0" align="center" cellpadding="3" cellspacing="1">
        <tr>
          <td><img src="../../data/images/regb.gif" width="18" height="18"><strong><font color="#FF0000">回复:</font></strong>
            <?=nl2br($r[retext])?>
          </td>
        </tr>
      </table>
    </td>
  </tr>
  <tr bgcolor="#FFFFFF">
    <td height="23" colspan="2"><div align="right">
        <table width="100%" border="0" cellspacing="1" cellpadding="3">
          <tr>
            <td width="65%"><strong>邮箱:<span style="word-break:break-all">
              <?=$r[email]?>
            </span>,电话:<span style="word-break:break-all">
              <?=$r[call]?>
            传 真:
            <?=$r[ZD_fax]?>
</span></strong></td>
            <td width="35%"> <div align="left"><strong>操作:</strong>[<a href="#ecms" onClick="window.open('ReGbook.php?lyid=<?=$r[lyid]?>&bid=<?=$bid?>','','width=600,height=380,scrollbars=yes');">回复/修改回复</a>]&nbsp;&nbsp;[<a href="gbook.php?enews=DelGbook&lyid=<?=$r[lyid]?>&bid=<?=$bid?>" onClick="return confirm('确认要删除?');">删除</a>]
                  <input name="lyid[]" type="checkbox" id="lyid[]" value="<?=$r[lyid]?>"<?=$checked?>>
                </div></td>
          </tr>
        </table>
        <table width="100%" border="0" align="center" cellpadding="3" cellspacing="1">
          <tr>
            <td><div align="center">所属留言分类:<a href="gbook.php?bid=<?=$r[bid]?>"><?=$br[bname]?></a></div></td>
          </tr>
        </table>
      </div></td>
  </tr>
</table>
<br>
<?
}
?>
  <table width="700" border="0" align="center" cellpadding="3" cellspacing="1">
    <tr>
      <td>分页:
        <?=$returnpage?>
        &nbsp;&nbsp;
        <input type="submit" name="Submit" value="审核留言" onClick="document.thisform.enews.value='CheckGbook_all';">
        &nbsp;&nbsp; <input type="submit" name="Submit2" value="删除留言" onClick="document.thisform.enews.value='DelGbook_all';">
        <input name="enews" type="hidden" id="enews" value="DelGbook_all">
        <input name="bid" type="hidden" id="bid" value="<?=$bid?>"></td>
  </tr>
</table>
好了,把这个文件保存,上传就OK了,
最后看一下后台的效果图:


如果你实在不想动手去改的话,就把rar内的文件直接上传上去吧,呵呵,把e/下面的这些文件覆盖就可以了,覆盖前请记得备份原文件哟,特别是改动过模板的朋友,别把自己的模板改掉了到时候要重新弄,那就麻烦大了,可呵

点击这里下载吧

[该贴被修改 1 次,最后修改时间 2010-08-21 12:37:48 ]


<a href="http://www.1oa.biz">办公家具</a>http://www.1oa.biz<br/>
<a href="http://www.cnwpj.com">盆景直销</a>http://www.cnwpj.com
2010-08-21 12:37:12 已设置保密 顶部 回复 引用 报告 编辑 删除

sxf2010
用户头衔:秀才

精华贴   :0
发贴数   :40
经验值   :365
注册时间:2010-07-10
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 2 楼]

自己坐沙发,呵呵



<a href="http://www.1oa.biz">办公家具</a>http://www.1oa.biz<br/>
<a href="http://www.cnwpj.com">盆景直销</a>http://www.cnwpj.com
2010-08-21 14:48:43 已设置保密 顶部 回复 引用 报告 编辑 删除

kingthins
用户头衔:举人

精华贴   :0
发贴数   :265
经验值   :721
注册时间:2008-10-30
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 3 楼]

支持




2010-08-23 10:38:56 已设置保密 顶部 回复 引用 报告 编辑 删除

beiyue
用户头衔:举人

精华贴   :0
发贴数   :233
经验值   :905
注册时间:2010-05-27
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 4 楼]

使用系统自带的模型管理可以直接做到,为何这么麻烦



铝包木门窗http://www.desland.cn铝包木门窗厂、德斯兰特铝包木,使用帝国CMS制作,欢迎浏览
2010-08-24 00:48:18 已设置保密 顶部 回复 引用 报告 编辑 删除

bebebe
用户头衔:探花

精华贴   :0
发贴数   :2692
经验值   :6789
注册时间:2010-03-01
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 5 楼]

不错,支持楼主分享




2010-08-24 08:41:28 已设置保密 顶部 回复 引用 报告 编辑 删除

laojunqing
用户头衔:书生

精华贴   :0
发贴数   :18
经验值   :132
注册时间:2007-11-26
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 6 楼]

谢谢楼主,修改成功了,呵呵。另参考了:http://bbs.phome.net/ShowThread/?threadid=107191&forumid=13

整理了下我的修改步骤(实现留言板增加性别、公司名称字段):

1、进入phpmyadmin后台,在数据库enewsgbook表(留言板数据表)中增加字段,
        比如:        sex,类型:varchar (10)
                company,               

2、打开e\enews\gbookfun.php,
        1、在12行左右的地方插入下面代码:
                $company=RepPostStr($add[company]);//myadd
                $sex=RepPostStr($add[sex]);//myadd

        2、在61行左右找到 $empire->query("insert into 的语句中的相应的位置加入相应的代码。

3、打开e\tool\gbook\index.php,
        1、在50行左右找到“$query="select …”查询语句中适当位置加入字段,如:,company,sex
        2、在135行左右找到“发布者: <?=$r[name]?>……”, 在要显示字段的地方加入<?=$r[company]?>  ,<?=$r[sex]?> 调用显示就行了。
        3、在170行左右找到“<form action="../../enews/index.php"” 在表单中加入相应的Input语句就行了。例如在联系电话这行下面插入:

        <tr bgcolor="#FFFFFF">
           <td>公司名称:</td>
           <td height="23"><input name="company" type="text" id="company" size="80"/></td>
        </tr><!--myadd-->                                       
        <tr class="ly2">
           <td class="lytxt">性&nbsp;&nbsp;&nbsp;别:</td>
           <td>  
              <INPUT name="sex" type="radio" value="先生">  先生&nbsp;&nbsp;&nbsp;
              <INPUT name="sex" type="radio" value="女士">  女士
           </td>
        </tr><!--myadd-->

4、后台:打开e\admin\tool\gbook.php,
        在50行左右找到“$query="select”查询语句,在末尾加入字段:,company,sex
        在119行左右的找到“<table width="700" …<td width="32%" height="23">发布者:……”, 在要显示字段的地方加入“<?=$r[company]?>  ,<?=$r[sex]?>

调用显示就行了。

5、后台回复页面:打开e\admin\tool\ReGbook.php
       
    直接在页面加入<?=$r[company]?>  ,<?=$r[sex]?>就行了。如在51行左右的“留言发表者”该行下面插入两行代码:
    <tr bgcolor="#FFFFFF">
      <td height="25">性别:</td>
      <td height="25">
        <?=$r[sex]?>
      </td>
    </tr>
     <tr bgcolor="#FFFFFF">
      <td height="25">公司名称:</td>
      <td height="25">
        <?=$r[company]?>
      </td>
    </tr>

6、到此前、后台都已经可以了,下面进一步修改(参考http://bbs.phome.net/ShowThread/?threadid=149682&forumid=13
        1、打开e/data/template/gbooktemp.txt文件,约51行找到“$query="select…”查询语句,在适当位置加入字段,如:,company,sex
        2、打开e/class/functions.php文件,约2940行找到:“$listtemp_center=str_replace("[!--retext--]","<?=\$r[retext]?>",$listtemp_center);”,在改

行下面插入相应写法的代码,如:
        $listtemp_center=str_replace("[!--company--]","<?=\$r[company]?>",$listtemp_center);
        $listtemp_center=str_replace("[!--sex--]","<?=\$r[sex]?>",$listtemp_center);

7、ok!^_^


------------
总结:
要改的文件有:
e\enews\gbookfun.php
e\tool\gbook\index.php
e\admin\tool\gbook.php
e\admin\tool\ReGbook.php

e\data\template\gbooktemp.txt
e\class\functions.php




2010-09-03 16:45:08 已设置保密 顶部 回复 引用 报告 编辑 删除

basse8829
用户头衔:书生

精华贴   :0
发贴数   :27
经验值   :136
注册时间:2010-03-29
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 7 楼]


此贴必火~!




2010-09-05 21:41:08 已设置保密 顶部 回复 引用 报告 编辑 删除

fdisk501
用户头衔:书生

精华贴   :0
发贴数   :46
经验值   :141
注册时间:2010-05-06
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 8 楼]

关注。收藏!




2010-09-20 09:40:19 已设置保密 顶部 回复 引用 报告 编辑 删除

jieorlin
用户头衔:秀才

精华贴   :0
发贴数   :117
经验值   :439
注册时间:2010-06-30
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 9 楼]

很好啊 持续关注啊



联系我:QQ50167214
2010-10-13 16:55:26 已设置保密 顶部 回复 引用 报告 编辑 删除

yinana1984
用户头衔:书生

精华贴   :0
发贴数   :31
经验值   :280
注册时间:2007-05-22
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 10 楼]

刷新之后就没了




2010-10-13 17:02:50 已设置保密 顶部 回复 引用 报告 编辑 删除
 1/3     1 2 3 ›› ›|

快速回复
内容

表情
使用EBB代码 使用smile代码 显示签名 自动分析url 自动分析img
     【进入高级模式】   (按 Ctrl+Enter 直接提交)
    顶部  加入收藏夹
关于帝国 | 广告服务 | 联系我们 | 法律声明 | 隐私条款 | 许可协议
Powered by: EBB Version 2.2.1