2017/04/20
来源:互联网 发布:淘宝企业店铺审核时间 编辑:程序博客网 时间:2024/06/14 16:24
今天学到了什么--php菜鸟
一.先说ajax异步刷新这块吧,最近在做记账系统,主要是对数据的查询和编辑位置
ajax异步刷新:
$post('后台地址',{属性名:属性值,属性名:属性值},function(data){
if(data.status == 0){
alert(data.msg);
}else{
alert(data.msg);
}
},'json');
data:包含 data 对象,这里返回的data是个数组对象
$status=array( 'status'=>0, 'msg'=>'' );其中msg存放提示信息
二.就来说一下今天的进度吧
1.在录入数据的这一部分,要求新录入的科目代码的前x位要等于其父级科目的代码
步骤:1.创建属性status 2.创建属性并赋值(从前台传来的数据)3.判读用户是否登录4.对数据进行合理性判断和合法性判断.5.把数据插入到数据库.
if($act == 'accounting_indata'){ $status=array( 'status'=>0, 'msg'=>'' ); $name=isset($name)?$name:''; $number=isset($number)?(int)$number:0; $pid = isset($pid)?$pid:''; //未登录请登录 if(is_array($userinfo)){ if($name ==''){ $status['status']=2; $status['msg']='科目名称不能为空'; echo json_encode($status);exit(); } if($number <= 0 ){ $status['status']=2; $status['msg']='科目代码不能为空'; echo json_encode($status);exit(); } if($pid == ''){ $status['status']=2; $status['msg']='请选择所属科目'; echo json_encode($status);exit(); }else{ $pid = (int)$pid; } $km_name = SelectOne('kemu',"(`name`='$name') or (`number` ='$number') and `delete`=0"); if($km_name['total'] >= 1){ $status['status']=3; $status['msg']='你输入的数据已存在'; echo json_encode($status);exit(); } $km_number = 'select number from `#@__kemu` where `id`='.$pid; $gkm_number = getAll($km_number); $gkm_num = $gkm_number['data']['0']['number']; $w = strlen($gkm_num); if($gkm_num!=substr($number,0,$w)){ $status['status']=3; $status['msg']='科目代码格式错误'; echo json_encode($status);exit(); } if($pid > 0 ){ $km_pid = SelectOne('kemu',"`id`= '$pid' and `delete` = 0"); if($km_pid['total'] < 1){ $status['status']=3; $status['msg']='所属科目不存在'; echo json_encode($status);exit(); } } $data = array( 'name'=>$name, 'number'=>$number, 'pid'=>$pid, 'create_time'=>time() ); if(Insert('kemu',$data)){ $status['status']=1; $status['msg']='添加成功'; }else{ $status['status']=3; $status['msg']='添加失败'; } }else{ $status['status']=2; $status['msg']='请登录'; } echo json_encode($status); exit();}
由于是个菜鸟:所以我想了很久怎么把录入数据库的数据输出到页面.
还是要记录一下,当数据入库后,就可以在前台代码中对数据进行操作--编写php代码,对数据库进行操作--查询数据,并用无限极分类找到所有数据
$sql = 'select * from `#@__kemu`';$all = getAll($sql);//echo '<pre>';var_dump($all);/** * 获取家谱树 * @param array $data 待分类的数据 * @param int/string $pid 要找的祖先节点 */function Ancestry($data , $pid,$lev = 1) { static $ancestry = array(); foreach($data as $value) { if($value['pid'] == $pid) { $value['lev'] = $lev; $ancestry[] = $value; Ancestry($data, $value['id'],$lev+1); // var_dump($value); } } return $ancestry;}$b=Ancestry($all['data'], 0);然后就可以在html的代码用数据就行了
例如,下拉列表的数据
<select> <?php foreach ($b as $v) { if($v['pid']==0){ echo '<option value='.$v['id'].'>'.$v['name'].'</option>'; }else if($v['pid']==1){ echo '<option value='.$v['id'].'>----'.$v['name'].'</option>'; }else if($v['pid']==2){ echo '<option value='.$v['id'].'>----------'.$v['name'].'</option>'; } } ?> </select>
0 0
- 2017/04/20
- 第945期机器学习日报(2017-04-20)
- 占位-2017年11月30日20:04:32
- 占位-2017年11月30日20:04:52
- iTunes connect Testflight 2017-04-20改版后的内部测试执行流程
- CVPR 2017-01-04
- 2017/02/04
- 2017-01-04
- 2017-03-04 邮票
- 2017-03-04 P2242
- 2017-04 JS笔记
- 2017-04-03日志
- 2017-04-06
- 2017-04-07
- 2017-04-08(字符串)
- 2017-04-09
- 2017/04/09
- 2017 04 10学习
- 使用List集合写的一个简单的学生信息管理系统!
- javaIO 序列化和反序列化
- python 动态增加logger handler
- Java注释与规范、javadoc命令生成帮助手册
- 排序、子查询
- 2017/04/20
- SpringMVC的freemarker支持(页面静态话)
- xgboost入门与实战(实战调参篇)
- 查询语句
- 普通树的广度搜索和深度搜索java实现
- 单例模式
- HTML DOM querySelector()方法
- 理解JAVA程序逻辑及面向对象编程思想简单总结(11)
- win7内存显示2.89G可用、3.88G可用的原因