本次使用的是由thinkphp的产品onethink开发
以下是本次项目积累的一些经验,方便以后查阅
1.在onethink框架内修改团队信息
因为onethink采用的是插件开发,所以我们必须找到那个并不好找的页面,下面直接给路径
Addons/DevTeam/widget.html
2.onethink需要引用公共资源目录的文件时
这主要指的是引用public公共资源目录下的东西,配置文件在Application/Home/Conf/config.php
使用的时候需要大写 所有内置标签都需要大写才可以引用
eg:<script src="__JS__/jquery-1.10.2.js"></script>
3.因为前端页面需要适配手机,所以在这里采用bootstrpa作为前端框架
(1).栅格系统介绍
这里就简单一下参数:
col-xs:手机屏幕(超小屏幕) col-sm:平板(小屏幕) col-md:桌面显示器(中等屏幕) col-lg:大桌面显示器(大屏幕)
(2).div垂直居中
line-height必须要有height属性存在才能够实现垂直居中效果
<div style="height: 40px;background: #000;line-height: 40px;width: 100%;text-align: right"> <span style="color: #999999;"> 登录 </span> <span style="color: #999999;"> 注册 </span> </div>
4.在onethink里利用公共函数库里面的方法
{:get_username()}
这个函数方法是Onethink的内置函数库,使用该函数是需要登录之后,从这个方法中能够获得登录用户的函数名
公共的函数肯定是在公共的资源目录下面,在这个文件中的方法都是公共方法,路径如下:
Application/Common/Common/function.php
5.倒计时实时更新源码
<!doctype html> <html> <head> <meta charset="utf-8"> <title>倒计时js代码 - 懒人建站 http://www.51xuediannao.com/</title> </head> <body> 倒计时js代码 - 懒人建站 http://www.51xuediannao.com/ 整理 发布 <DIV id="CountMsg" class="HotDate"> <span id="t_d">00天</span> <span id="t_h">00时</span> <span id="t_m">00分</span> <span id="t_s">00秒</span> </DIV> <script type="text/javascript"> function getRTime(){ var EndTime= new Date(‘2016/09/18 20:24:00‘); //截止时间 前端路上 http://www.51xuediannao.com/qd63/ var NowTime = new Date(); var t =EndTime.getTime() - NowTime.getTime(); /*var d=Math.floor(t/1000/60/60/24); t-=d*(1000*60*60*24); var h=Math.floor(t/1000/60/60); t-=h*60*60*1000; var m=Math.floor(t/1000/60); t-=m*60*1000; var s=Math.floor(t/1000);*/ var d=Math.floor(t/1000/60/60/24); var h=Math.floor(t/1000/60/60%24); var m=Math.floor(t/1000/60%60); var s=Math.floor(t/1000%60); document.getElementById("t_d").innerHTML = d + "天"; document.getElementById("t_h").innerHTML = h + "时"; document.getElementById("t_m").innerHTML = m + "分"; document.getElementById("t_s").innerHTML = s + "秒"; } setInterval(getRTime,1000); </script> </body> </html>
6.button和a标签的连接方式 (区别)
eg:
<button class="btn btn-edit" data-id="{$vo.id}" data-url="{:U(‘ShopCat/edit‘,array(‘id‘=>$vo[‘id‘]))}">修改 </button> <a href="{:U(‘ShopCat/del?id=‘.$vo[‘id‘])}" class="confirm ajax-get">删除</a>
7.拿到数据库的时间戳转化为时间显示
<td>{$vo.create_time|date=‘Y-m-d H:i:s‘,###}</td>
8.使用eq标签
<td> <eq name="vo.status" value="0"> <span>未完成</span> </eq> <eq name="vo.status" value="1"> <span>已完成</span> </eq> </td>
9.关于ajax数据绑定注意
不成功 $(msg.id).appendTo($("#qihao")); 成功 $("#qihao").html(msg.id);
10.在js里的时间戳只能识别13位的和java里的一样
(1).先从服务端用ajax请求获取服务端时间
window.stop_time window.onload = function () { $.ajax({ type: "POST", url: "http://127.0.0.1/index.php?s=/Home/Index/get_qihao", dataType: ‘json‘, success: function (msg) { $("#qihao").html(msg.id); window.stop_time = msg.time; return; }, error: function (xhr, type, errorThrown) { alert("error"); } }); }
(2).由于需要转换成需要的时间格式 2016-9-22 20:43:56
需要先对10位时间戳转换成13位时间戳
var d = new Date(parseInt(window.stop_time + "000")); formatDate(d);
再进行格式的转换
function formatDate(now) { var year = now.getYear() + 1900; var month = now.getMonth() + 1; var date = now.getDate(); var hour = now.getHours(); var minute = now.getMinutes(); var second = now.getSeconds(); window.geshi_stop_time = year + "/" + month + "/" + date + " " + hour + ":" + minute + ":" + second }
11.对js控件进行隐藏属性
$("#content").hide();
12.前端dom提交的数据不正确
解决方案:name="win_num_a" name需要填写数据表里正确的字段 <form action="{:U(‘Lottery/dialog‘)}" method="post" class="form-inline" enctype="multipart/form-data"> <input type="hidden" name="id" value="{$info.id}"> <div class="form-group"> <label class="control-label">中奖号码<span class="import"></span>:</label> <input type="text" class="form-control" name="win_num_a" value="{$info.win_num_a}" required="required"> <button class="btn" type="submit">修改</button> </div> </form>
13.利用Post数据作为条件,插入数据库
$m = $lottery->where("status=0")->find(); $arr[‘id‘] = $_POST[‘id‘]; $arr[‘test_num‘] = $_POST[‘test_num‘]; $arr[‘win_num‘] = $m[‘win_num‘]; if($m){ $z = $lottery_my -> add($arr);
时间: 2024-10-15 04:08:50