新开发的体重管理项目----用纯php模仿yii2框架建立的

41 篇文章 0 订阅

1.配置虚拟路径的时候,一定是要配置到有index.php的目录。因为这个文件是入口,会先你输入路径之后,会去访问这个路径下的index.php文件。
2. http://www.yiimvc.com/index.php?controller=Index&action=index
这个方式传递的数据打印出来的结果是
Array ( [controller] => Index [action] => index )
3.

<?php
$string = "php string functions are easy to use.";
$sentence = ucfirst($string);
$title = ucwords($string);
print("$sentence\n");
print("$title\n"); 
print("\n");
?>

输出结果如下:
Php string functions are easy to use.
Php String Functions Are Easy To Use
ucfirst是首字母大写,ucwords是所有的单次的首字母大写

4.我再model层的时候,直接使用print_r或者return等方法,会出现如下错误,是语法错误,不能再类里面写函数,要新建一个方法再写。

5.实例化model的对象之后,方法要加括号,属性不用加括号。例子
model>method(); model->title;

  1. if(!defined(‘ITEM_NAME’) || ITEM_NAME !=’Test’) die();
    这句话是防止别人盗用数据,ITEM_NAME这个全局变量要在配置文件里面就配置掉。

  2. $this->links = @mysql_connect(DB_HOST,DB_USER,DB_PWD) or die ("数据库连接失败!");
    加上一个@符号,就是在错误的时候不显示错误信息,然后之后or后面的那句die;

8.在php5.3之后,php会建议使用mysqli来代替mysql,首先mysqli有个连接池的功能,能够减少连接数,其次,mysqli对innodb的兼容性更好
9.设置数据库的charset的时候,要写UTF8, 不能写UTF-8,不然会不识别的。
10.如图一显示的错误,是因为我__construct用了两次。
这里写图片描述
11.图二的错误就是需要将创建的数据库连接作为第一个
这里写图片描述
12.如何实现将数据传递到视图层
目前,因为视图层我是直接用include_once的方法引入的,所以直接可以使用控制器里面的参数

13.jquery要在bootstrap之前引入,因为bootstrap需要用到jquery

14.一个页面里面id要唯一,如果是循环的表单里面,每个按钮的话,要用class,不要用id,如果用了id,然后循环下来,所有的按钮都是同一个id,然后就只能点击第一个按钮的时候有反应。

15.
代码例子

<?php 
foreach($data['event'] as $key => $val){ 
?>
    <tr>
        <th scope="row" value="<?php echo $val['event_id']; ?>"><?php echo $key + 1; ?></th>
        <td><?php echo $val['event_name']; ?></td>
        <td><?php echo $val['event_cost']; ?></td>
        <td>
            <div><button type="button" class="btn btn-info buy">立即汇换</button></div>
        </td>
    </tr>
<?php }?>

这里写图片描述
想做到的是点击立即汇换按钮,然后获取到1那里面定义的val的值
在jquery里面的话是
var str = $(this).parents(“tr”).find(‘th’).attr(“value”);
先在父类里面找到tr然后找到th,然后用attr获取value的值

16.
这里写图片描述

想做到的要求是,结束计时的时候,给这个input地方加上一个value标签的值。(“#oT”).val(oT.value);  
然后这个只有触发提交的时候才会显示出来,查看的话,在浏览器的console里
(‘#oT’).val() 用这个方法去查看

17.无论是post或者get提交的内容,要给他们加上一个name的属性,这样才能传递参数。

18.在jquery的情况下使用ajax的代码例子;

<script type="text/javascript">
    $('.buy').click(function(){
        var event_id = $(this).parents("tr").find('th').attr("value");//attr() 方法设置或返回被选元素的属性值。
        var event_cost = $(this).parents("tr").find('.cost').attr("value");//attr() 方法设置或返回被选元素的属性值。
        console.log(event_cost);
        $.ajax({
            type:"post",
            dataType:'json',
            url:"<?php echo BASIC_URL . 'index.php?controller=event&method=buy'?>",
            data:{
                'event_id': event_id,
                'event_cost': event_cost
            },
            success:function(d){
                if(d.status == 0){
//                    d.showModal();
                    window.location.reload();
                    alert("购买成功");
                }else if(d.status == 1){
                    alert("请点击开始");
                }
            }
        });
    });
</script>

这个是我自己写的,相当于buy这个class所在的标签被点击的时候出发里面的方法,可以在外面定义变量。然后去使用ajax,记得要加上dataType,这样就能对返回回来的数据进行json格式的解析了。
然后function(d) 这个d表示传回来的参数,相当于我的方法调用了这个函数,我通过json_encode的方式传值个这个d

  1. 关于弹出框,小木给我推荐的插件是artDialog 文档地址
    http://aui.github.io/artDialog/doc/index.html
    然后我需要引入
<script src="<?php echo JQUERY_URL . 'jquery-1.11.3.min.js';?>"></script>
<link rel="stylesheet" href="<?php echo PLUGIN_URL . 'artDialog/ui-dialog.css'?>">
<script src="<?php echo PLUGIN_URL . 'artDialog/dialog-min.js'?>"></script>

这三个文件就好

20.用attr获取到的数据是string类型的,要转化成int才能比较,下面是两种转化方式
var event_cost = parseInt( (this).parents(tr).find(.cost).attr(value));//attr()vargold= (‘.gold’).attr(“value”) * 1;

21.jquery里面命名的话,不能和方法名相同

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值