Maison > développement back-end > tutoriel php > php 依据输入 开始时间 结束时间 获取数据库中表中记录

php 依据输入 开始时间 结束时间 获取数据库中表中记录

WBOY
Libérer: 2016-06-13 12:58:58
original
1325 Les gens l'ont consulté

php 根据输入 开始时间 结束时间 获取数据库中表中记录
我要做的是一个统计页面 查询条件是根据输入(js点击选择时间)开始时间 结束时间 点确定按钮查询这时间段记录
数据库字段:
id int(10)
ip varchar(50)
time varchar(50)
type varchar(50) 

开始日期:  结束日期:  

下面是一个表格:
内容是类型和对应数量

请各位帮下忙,刚接触统计




------解决方案--------------------
开始日期:timeStart" onfocus="c.showMoreDay = false;c.show(this);" />  结束日期:timeEnd" onfocus="c.showMoreDay = false;c.show(this);" />  

$t1=$_POST['timeStart'];<br />
$t2=$_POST['timeEnd'];<br />
$sql="select type,count(*) from tt where time BETWEEN '$t1' AND '$t2' group by type";<br />
$result=mysql_query($sql);<br />
while($row=mysql_fetch_row($result)){<br />
        echo $row[0].'  '.$row[1].'<br>';<br />
}
Copier après la connexion

------解决方案--------------------
time varchar(50)
至少应该校正传入数据符合 time 字段的格式才能比较
他没说,我不知道
------解决方案--------------------
关键就是数据库语句,原理和做法就和你按ID查询一样的。SQL语句二楼已经给出来了。
另外一点的话,楼主可以去下载个时间选择插件,毕竟让用户手动输入时间是很不理想的。介绍一个jq的 jquery-calendar 网上有很多种样式表,可以自己选样式。
------解决方案--------------------
time varchar(50)
你保存的时间是字符串,那么
2012.12.14 10:43
2012/12/14 10:43:20
2012-12-14 10:43:31p
都是合法的日期
如果表单传入的是 2012/12/14 10:43:22
那么至少有两个是比配不到的



引用:
xuzuning 您说的不太懂是说插入时间之前先判断下格式吗
xiebuqing 我是下载的日历插件用户选择时间
还一个问题是当用户不查询时间段记录的时候 页面要默认显示数据库里所有类型记录

------解决方案--------------------
那你传入的日期格式是怎样的。
------解决方案--------------------
即便只是年月日
'2012/12/14' 与 '2012-12-14' 也是不相等的

------解决方案--------------------
只要格式能够统一,#1的代码就可以用了
------解决方案--------------------
判断一下就可以了
if(!empty($t1) && !empty($t2)){<br />
   $sql="select type,count(*) from tt where time BETWEEN '$t1' AND '$t2' group by type";<br />
}else{<br />
    $sql="select type,count(*) from total_counter group by type";<br />
}<br />
$result=mysql_query($sql);
Copier après la connexion

------解决方案--------------------
这样写好些,能适应各种情况

$t1 = $_POST['timeStart'];<br>
$t2 = $_POST['timeEnd'];<br>
$t = array(1);<br>
if($t1) $r[] = "time>='$t1'";<br>
if($t2) $r[] = "time
$t = join(' and ', $t);<br>
<br>
$sql = "select type,count(*) from total_counter where $t group by type"; <div class="clear">
                 
              
              
        
            </div>
Copier après la connexion
Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal