首页 > 代码库 > 项目经验-博彩网站

项目经验-博彩网站

本次使用的是由thinkphp的产品onethink开发

以下是本次项目积累的一些经验,方便以后查阅

 

1.在onethink框架内修改团队信息

  因为onethink采用的是插件开发,所以我们必须找到那个并不好找的页面,下面直接给路径

  Addons/DevTeam/widget.html

 

2.onethink需要引用公共资源目录的文件时

  这主要指的是引用public公共资源目录下的东西,配置文件在Application/Home/Conf/config.php

 

  使用的时候需要大写 所有内置标签都需要大写才可以引用

  eg:<script src="http://www.mamicode.com/__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="http://www.mamicode.com/{: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="http://www.mamicode.com/0">        <span>未完成</span>    </eq>    <eq name="vo.status" value="http://www.mamicode.com/1">        <span>已完成</span>    </eq></td>

 

 

9.关于ajax数据绑定注意

    

不成功$(msg.id).appendTo($("#qihao"));成功$("#qihao").html(msg.id);

 

10.在js里的时间戳只能识别13位的和java里的一样

  (1).先从服务端用ajax请求获取服务端时间

    

window.stop_timewindow.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="http://www.mamicode.com/{$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="http://www.mamicode.com/{$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);

 

项目经验-博彩网站