ajax与算法,sql的group处理
function correctAction(){
$semester_id = $this->_getParam("semester_id");
$day = $this->_getParam("day");
//todo...
$where = array();
$where['lx_lessons.semester_id = ?'] = array("type"=>,"val"=>$semester_id);
$where['lx_lessons.lvalue = ?'] = array("type"=>,"val"=>'');
$where['lx_lessons.day = ?'] = array("type"=>,"val"=>$day);
$where['lx_lessons.user_id > ?'] = array("type"=>,"val"=>);
$aLessons = $this->dao_lessons->getlessons($where,array('day desc','lorder desc','user_id desc'), false, false, false, array("id","day","lorder","lvalue","user_id","course_id"));
$a = $c = $d = array();
foreach($aLessons as $key=>$val)
{
$a[$val['user_id']][$val['id']] = $val['lorder'];
}
foreach($a as $k=>$v)
{
$total = count($v);
if($total > )
{
if($total !== count(array_unique($v)))
{
foreach ($v as $key2 => $value2) {
$c[$k][$value2][] = $key2;
}
}
}
}
foreach ($c as $key3 => $value3) {
foreach ($value3 as $key4 => $value4) {
if(count($value4) > )
{
$d[$key4] = $value4;
}
}
}
$total = $this->updateCourse($d);
echo $total;
}
function updateCourse($data)
{
$total = ;
foreach ($data as $k => $v) {
$count = count($v);
foreach ($v as $k1 => $v1) {
$dataLessons['id'] = $v1;
$dataLessons['lvalue'] = /$count;
$res = $this->dao_lessons->updateLessons($dataLessons);
if($res){
$total ++;
}
}
}
return $total;
}
<html>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<head >
<title></title>
<link rel="stylesheet" type="text/css" href="/js/thickbox3.1/thickbox.css">
<link rel="stylesheet" type="text/css" href="/css/master.css" />
<link rel="stylesheet" type="text/css" href="/css/style.css" />
<link rel="stylesheet" type="text/css" href="/css/commonlist.css" />
<script type="text/javascript" src="http://code.jquery.com/jquery-2.0.3.min.js"></script>
<script type="text/javascript">
var jQuery2 = jQuery.noConflict();
</script>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="/js/common/png.js"></script>
<script type="text/javascript" src="/js/common.js"></script>
<script type="text/javascript" src="/js/thickbox3.1/thickbox.js"></script>
<script type="text/javascript" src="/js/fc.js"></script>
<script type="text/javascript" src="/js/common/commonlist.js"></script>
<script type="text/javascript">
$(function(){
var gaodu1 = $(window).height()-;
var kuandu1 = $(window).width()-; $("#waikuan").height(gaodu1);
$("#waikuan").width(kuandu1); //$("body").append("<div id='main_bg'/>");
//$("#main_bg").append("<img src='/images/menubg.png' id='bigpic'>"); cover();
$(window).resize(function(){ //浏览器窗口变化
cover();
});
//提交
$("#import").click(function(){
if($("#excel").val()){//判断是否是excel,xls或xlsx
var doc = $("#excel").val();
var pos = doc.lastIndexOf(".");
var suffix = doc.substring(pos+);
if(suffix == 'xls' || suffix == 'xlsx'){
$("#form1").submit();
}
}else{
alert("请选择excel文件");
}
}); $("#correct").click(function(){
var semester_name = $("#semester_id").find("option:selected").text(); var r=confirm("确定校准"+semester_name+"课时?");
if (r==true)
{
testCourse();
}
});
}); function testCourse(day)
{
var semester_id = $("#semester_id").val();
$.ajax({
type: "POST",
url: '/exam/sche/correct',
data: "semester_id="+semester_id+"&day="+day,
success: function(msg){
msg = "周"+day+"数据校准完毕,更新了"+msg+"条。";
if(day>=){
msg += "<br/>";
}
if(day == ){
$("#testCourse").html("");
}
$("#testCourse").append(msg);
if(day < )
{
var newDay = parseInt(day)+;
testCourse(newDay);
}
}
}); } function cover(){
var win_width = $(window).width();
var win_height = $(window).height();
$("#bigpic").attr({width:win_width,height:win_height});
} $(function(){
//$.toSelect("user_name","selectid");
$(".stripe_tb tr").addClass("bgwhite");
$(".stripe_tb tr").mouseover(function(){
//如果鼠标移到class为stripe_tb的表格的tr上时,执行函数
// $(this).addClass("over");
})
.mouseout(function(){
//给这行添加class值为over,并且当鼠标一出该行时执行函数
$(this).removeClass("over");
}) //移除该行的class
$(".stripe_tb tr:even").addClass("alt");
//给class为stripe_tb的表格的偶数行添加class值为alt
}); </script>
</head>
<body>
<!--头部信息begin-->
<!--{include file = '../../head.tpl'}-->
<!--头部信息end-->
<div id="main">
<div class="header">
<h1>导入学生数据表</h1>
<div class="back"> <a href="/member"><img src="/images/backbt.png" /></a> </div>
</div> <table width="90%" border="" cellspacing="" cellpadding="" class="yuanjiao" >
<tr>
<td valign="top">
<form id="form1" name="form1" method="post" action="" enctype="multipart/form-data">
<div class="grey2" style="padding:30px 20px 10px 50px;">
<select name="semester_id" id="semester_id" class="ml10" >
<!--{html_options options=$aSemesters selected=$curSemester}-->
</select>
<input type="file" name="excel" id="excel" value="">
</div>
<div class="tijiao1 mt20"><span id="import">导入</span></div>
<div class="tijiao1 mt20"><span id="correct">课时校准</span></div>
</form>
</td>
</tr>
</table>
<table class="datalist">
<!--{if $aError}-->
<!--{section name=data loop=$aError}-->
<tr class="data_row">
<td class="left" style="text-align:left;"><span style="color:red">Error:</span><!--{$aError[data]}--></td>
</tr>
<!--{/section}-->
<!--{/if}-->
<div id="testCourse"></div>
</table>
</div>
</body>
</html>
function correct2Action(){
$semester_id = $this->_getParam("semester_id");
$day = $this->_getParam("day");
//todo...
$where = array();
$where['lx_lessons.semester_id = ?'] = array("type"=>,"val"=>$semester_id);
//$where['lx_lessons.lvalue = ?'] = array("type"=>1,"val"=>'1');
$where['lx_lessons.day = ?'] = array("type"=>,"val"=>$day);
$where['lx_lessons.user_id > ?'] = array("type"=>,"val"=>);
$aLessons = $this->dao_lessons->getlessons($where,false, false, false, false, array("COUNT(id) as num","day","lorder","user_id"),false,array('day','lorder','user_id'));
foreach($aLessons as $key=>$val)
{
if($val['num'] == )
{
unset($aLessons[$key]);
}
}
print_r($aLessons);exit;
ajax与算法,sql的group处理的更多相关文章
- sql语句Group By用法-转载
sql语句Group By用法一则 2007-10-25 12:00 sql语句Group By用法一则 如果我们的需求变成是要算出每一间店 (store_name) 的营业额 (sales),那怎么 ...
- MYSQL:SQL中Group By的使用
SQL中Group By的使用 1.概述 2.原始表 3.简单Group By 4.Group By 和 Order By 5.Group By中Select指定的字段限制 6.Group By ...
- C# Linq to sql 实现 group by 统计多字段 返回多字段
Linq to sql 使用group by 统计多个字段,然后返回多个字段的值,话不多说,直接上例子: where u.fy_no == fy_no orderby u.we_no group u ...
- MySQL 使用profile分析慢sql,group left join效率高于子查询
MySQL 使用profile分析慢sql,group left join效率高于子查询 http://blog.csdn.net/mchdba/article/details/54380221 -- ...
- 转载:SQL中Group By 的常见使用方法
SQL中Group By 的常见使用方法 转载源:http://www.cnblogs.com/wang-meng/p/5373057.html 前言今天逛java吧看到了一个面试题, 于是有了今天 ...
- SQL 之 Group By
SQL 之 Group By Group By从字面意义上理解就是根据By指定的规则对数据进行分组,所谓的分组就是将一个数据表划分成若干个小区域. 例如:有这么一张表
- sql中group by用来干嘛的
sql中group by用来干嘛的 一.总结 一句话总结: 1.group by用来分类汇总的,by后面接要分的类 2.group by既然是分类汇总,那就要和聚合函数结合使用,因为要汇总啊 3.ha ...
- SQL中Group By的使用
1.概述 2.原始表 3.简单Group By 4.Group By 和 Order By 5.Group By中Select指定的字段限制 6.Group By All 7.Group By与聚合函 ...
- SQL中Group By 的使用
1.概述 “Group By”从字面意义上理解就是根据“By”指定的规则对数据进行分组,所谓的分组就是将一个“数据集”划分成若干个“小区域”,然后针对若干个“小区域”进行数据处理. 2.原始表 3.简 ...
随机推荐
- CSS中字体尺寸总结
下面是我总结的css中关于字体尺寸的知识,欢迎高手拍砖! 前端开发过程中,我们经常会遇到设置某个div固定显示几行文本:这时我们需要精确计算每个字号字体的宽度和高度. 下面是w3school中描述的尺 ...
- Android_CodeWiki_01
记录常用代码片,以备不时之需..wkakak,开始: 1. 精确获取屏幕尺寸(例如:3.5.4.0.5.0寸屏幕) public static double getScreenPhysica ...
- Generator & yield write in sync way
Generator & yield write in sync way var p = new Promise(function(resolve, reject){ setTimeout(fu ...
- 启用 ASP.NET MVC 项目的 Edit and Continue
VS 的 Edit and Continue 功能允许你在 Debug 的过程中,修改代码并且编译运行修改后的代码.对于编程阶段非常的好用,不需要你停止正在进行的 Debug,修改代码然后运行代码. ...
- webservice axis2客户端设置代理方法(公司网络通过代理访问时)
webservice axis2客户端设置代理方法(公司网络通过代理访问时) UploadProcessInServiceStub stub = new UploadProcessInServic ...
- 各种HelloWorld
http://blog.csdn.net/whxaing2011/article/details/20736759 ES总结: http://www.cnblogs.com/sunxucool/p/3 ...
- FLASH MAGIC LPC ISP下载方式说明
硬件:EASYARM2131 开发板软件:FLASH MAGIC 下载地址:http://www.flashmagictool.com/程序:Demo2131.hex LPC的ISP下载方式, ...
- MFC CWnd仿按钮
CBtn::CBtn() { RegisterWndClass(); } bool CBtn::RegisterWndClass(void) { WNDCLASS n; HINSTANCE hInst ...
- strcpy()、memcpy()、memmove()、memset()的内部实现
一直想知道 strcpy().memcpy().memmove().memset()的内部实现 strcpy(), 字符串拷贝. char *strcpy(char *strDest, const c ...
- D3学习教程
[ D3.js 入门系列 ] 入门总结 | OUR D3.JS http://www.ourd3js.com/wordpress/?p=396