欢迎来到欣怡建站!我们致力于提供优质的网站建站服务
注册

DedeCMS 增加日期类型样式的方法

相关案例演示

使用范围:自动模型的附加表,独立模型表 

优点:可以使用mysql自带的日期处理/日期转换函数,也可以对date字段进行排序。 

 

这是mysql数据库自带的一种数据类型,可以使用字符串或数字向表中的date类型列插入数据。Dede默认的时间类型只有datetime,而且是UNIX时间戳,操作只有使用dede提供的函数进行转换,使用上很不方便(例如:SQL语句中直接使用日期函数或者按年—月—日排序如何处理?)。为什么只提供这种时间类型呢?我不理解,我没有使用过linix系统,是不是基于这种考虑我不清楚。闲话少说,请大家看操作步骤: 

 

一、修改mychannel_field_add.php 

文件作用:增加指定的内容频道表的字段(前台程序) 

修改目的:增加一种字段类型 

文件位置:\DedeAMPZ\WebRoot\Default\dede 

操作:增加红色显示的内容 

………………………… 

………………………… 

<td bgcolor="#FFFFFF"> 

<div class='nw'><input type='radio' class='np' name='dtype' id='dtype1' value="text" checked='1'>单行文本(varchar)</div> 

………………………… 

………………………… 

………………………… 

<div class='nw'><input type='radio' class='np' name='dtype' id='dtype16' value="stepselect">联动类型</div> 

<div class='nw'><input type='radio' class='np' name='dtype' id='dtype17' value="date">日期类型</div> 

二、修改mychannel_field_edit.php 

文件作用:编辑指定的内容频道表的字段(前台程序) 

修改目的:增加一种字段类型 

文件位置:\DedeAMPZ\WebRoot\Default\dede 

操作:增加红色显示的内容 

………………………… 

………………………… 

if($canchange) 

?> 

<option value="text">单行文本(varchar)</option> 

………………………… 

………………………… 

<option value="stepselect">联动类型</option> 

<option value="date">日期类型</option> 

 

<?php 

?> 

</select> </td> 

三、修改fieldtype.txt 

文件作用:系统指定的字段类型 

修改目的:增加一种字段类型,注意标点符号是半角 

文件位置:\DedeAMPZ\WebRoot\Default\dede\inc 

操作:增加红色显示的内容 

 

………………………… 

………………………… 

checkbox,checkbox多选框 

stepselect,联动类型 

date,日期类型 

 

四、修改inc_admin_channel.php 

文件作用:对前台内容频道提交的数据进行处理 

修改目的:增加对date日期类型的处理(原程序没有这个类型,不增加就会默认处理成字符类型) 

文件位置:\DedeAMPZ\WebRoot\Default\dede\inc 

操作:增加红色显示的内容 

………………………… 

………………………… 

if($dtype=="int"||$dtype=="datetime") 

if($dfvalue=="" || ereg("[^0-9-]",$dfvalue)) 

$dfvalue = 0; 

$fields[0] = " `$fieldname` int(11) NOT NULL default '$dfvalue';"; 

$fields[1] = "int(11)"; 

else if($dtype=="date") 

 

 

if($dfvalue=="" || ereg("[^0-9-]",$dfvalue)) 

 

 

$dfvalue = '0000-00-00'; 

 

 

$fields[0] = " `$fieldname` date NOT NULL default '$dfvalue';"; 

 

$fields[1] = "date"; 

 

 

else if($dtype=="stepselect") 

………………………… 

………………………… 

 

五、你可以仿照这种办法,在自动模型的附加表或独立模型表中增加新类型datetime,取消UNIX时间戳,但难度稍大。 

六、关于在SQL语句中使用mysql日期函数/转换函数,请参阅互联网。

 

补充:

1、本程序调试环境:dedecms5.5 utf8

作者:欣怡建站 挑错 时间:2020-01-09 18:23
首先声明,只要是我们的vip会员所有源码均可以免费下载,不做任何限制
☉本站的源码不会像其它下载站一样植入大量的广告。为了更好的用户体验以后坚持不打水印
☉本站只提供精品源码,源码在于可用,不在多!!希望在这里找到你合适的。
☉本站提供的整站程序,均带数据及演示地址。可以在任一源码详情页查看演示地址
☉本站所有资源(包括源码、模板、素材、特效等)仅供学习与参考,请勿用于商业用途。
☉如有其他问题,请加网站客服QQ(984818011)进行交流。
相关教程
在线客服