- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
更多详情:我在带有 PHPMyAdmin 的本地主机 (XAMPP) 上使用 PHP 5.4。我有一个包含两个相关表的数据库,users
和 customers
。
我希望能够在可能的 15 分钟间隔内以适当的时间线订购和显示 users
-> customers
,即:'10:15 AM ', '10:30 AM'... '12:45 PM', '1:30 PM'
等。我对此进行了研究并尝试了几种不同的方法,但似乎没有得到我正在寻找的结果为了。
有一个users
表,这是一个经过验证的登录用户,可以添加自己的客户。用户的唯一 id
存储在 customers
表的列中。这允许我使用该列从 customers
表中按用户进行订购。
customers
表有一列route_time
,这是一个包含常规字符串的varchar。该时间来自从 "7:00 AM"
开始的数组保持时间,并以 15 分钟为间隔持续到 "6:45 PM"
。这是通过表单选择选项作为“route_time”发布的。
我正在尝试获取正确的时间格式,但遇到子午线和两位数小时的问题,例如 10、11 和 12。
我已经通过以下操作解决了 meridiem 问题,但我确信有一种更有效的方法,因为我是一名 PHP 编码新手。
$monday="";
$monday1="";
$mon = "
SELECT *
FROM `customers`
WHERE `user_id`='".$uid."'
AND `route_day` = 'Monday'
ORDER BY CAST(`route_time` AS UNSIGNED), `route_time`;
";
$monResults = $cust->db->query($mon);
if($monResults->num_rows){
while($rows = $monResults->fetch_assoc()){
$time=SUBSTR($rows['route_time'],5,3);
if(trim($time) == 'AM'){
$monday .= '<div style="padding-top:5px;" class="row"><a title="Edit this customer." href="?editCust=Y&cid='.$rows['cid'].'">'.$rows['cfname'].' '.$rows['clname'].'</a></div>';
$monday .= '<div class="row" style="color:red;"><small>'.$rows['route_time'].'</small></div>';
$monday .= '<div class="row"><small>'.$rows['cstreet'].'</small></div>';
$monday .= '<div class="row"><small>'.$rows['ccity'].' '.$rows['cstate'].', '.$rows['czip'].'</small></div>';
}elseif(trim($time) == 'PM'){
$monday1 .= '<div style="padding-top:5px;" class="row"><a title="Edit this customer." href="?editCust=Y&cid='.$rows['cid'].'">'.$rows['cfname'].' '.$rows['clname'].'</a></div>';
$monday1 .= '<div class="row" style="color:red;"><small>'.$rows['route_time'].'</small></div>';
$monday1 .= '<div class="row"><small>'.$rows['cstreet'].'</small></div>';
$monday1 .= '<div class="row"><small>'.$rows['ccity'].' '.$rows['cstate'].', '.$rows['czip'].'</small></div>';
}
}
}
“1:00 AM”的字符串 = 7 而“10:00 AM”的字符串 = 8。这是 $time=SUBSTR($rows['route_time'],5,3);
,如果我从第 5 个字符串中拉出并转到 3,然后我可以使用 trim($time)
函数从来自 7 个字符串值的 meridiem 开头删除多余的空格.然后使用 if/else 作为参数。
然后我使用下面的代码调用它:
<div class='col-md-2 text-left'><h4><small><i class="fa fa-calendar"></i></small> Monday</h4><?php echo $monday.$monday1; ?></div>
<?php
}
if($tueResults->num_rows){
?>
<div class='col-md-2 text-left'><h4><small><i class="fa fa-calendar"></i></small> Tuesday</h4><?=$tuesday.$tuesday1?></div>
<?php
}
if($wedResults->num_rows){
?>
<div class='col-md-2 text-left'><h4><small><i class="fa fa-calendar"></i></small> Wednesday</h4><?=$wednesday.$wednesday1?></div>
<?php
}
if($thursResults->num_rows){
?>
<div class='col-md-2 text-left'><h4><small><i class="fa fa-calendar"></i></small> Thursday</h4><?=$thursday.$thursday1?></div>
<?php
}
if($friResults->num_rows){
?>
<div class='col-md-2 text-left'><h4><small><i class="fa fa-calendar"></i></small> Friday</h4><?=$friday.$friday1?></div>
<?php
}
if($satResults->num_rows){
?>
<div class='col-md-2 text-left'><h4><small><i class="fa fa-calendar"></i></small> Saturday</h4><?=$saturday.$saturday1?></div>
<?php
}
if($sunResults->num_rows){
?>
<div class='col-md-2 text-left'><h4><small><i class="fa fa-calendar"></i></small> Sunday</h4><?=$sunday.$sunday1?></div>
这对 merdiem 进行了正确排序,我遇到的问题是我无法对 12: 在下午的 1、2、3、4、5 之前进行排序。我在上午 10:15 之后的上午 10:00 订单也遇到了一个奇怪的问题,这也是间歇性的,非常奇怪。我无法发布照片,因为这是我在 stackoverflow 上的第一篇帖子,还没有适当的声誉来添加照片 =/。这是我的测试服务器网站上托管照片的链接。 http://dalelandry.com/img//ex.PNG
我也很想知道我是否应该放弃这种方法并使用 date()
或 datetime()
方法来保存客户特定的 route_times
。我还有一个类似于 route_day
的列,它也是一个来自数组选择选项的 VARCHAR。我对此没有任何问题。我应该在这里采用基于 date()
的方法吗?是否有更多关于 date()
的 ORDER BY 选项,因为 12:00 PM 在 12:45 PM 之前出现,还是我应该坚持使用字符串选项?我感谢任何建议或帮助!先感谢您!
最佳答案
我得出的结论是,使用 date()
和 datetime()
比尝试拼凑字符串值数组来处理时间和日期要好得多当它已经作为函数内置时,周作为字符串。我将更新我的数据库以获得我需要的两个条目,一个 date('l')
代表星期几,另一个 datetime('m-d-y @ g:i A')
用于日期和时间。我将能够使用不同的 DateTime 函数来提取我需要的数据,并从那里以我需要的方式从数据库中显示它。感谢 Tim 和 mrun 的深思熟虑的输入!
关于php - 我如何以传统的 'time' 增量进行 ORDER BY,一个值字符串,ex : "10:00 AM", 来自不是 date() 格式的数据库条目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42922055/
我喜欢 smartcase,也喜欢 * 和 # 搜索命令。但我更希望 * 和 # 搜索命令区分大小写,而/和 ?搜索命令遵循 smartcase 启发式。 是否有隐藏在某个地方我还没有找到的设置?我宁
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题? Update the question所以它是on-topic对于堆栈溢出。 10年前关闭。 Improve this qu
从以下网站,我找到了执行java AD身份验证的代码。 http://java2db.com/jndi-ldap-programming/solution-to-sslhandshakeexcepti
似乎 melt 会使用 id 列和堆叠的测量变量 reshape 您的数据框,然后通过转换让您执行聚合。 ddply,从 plyr 包看起来非常相似..你给它一个数据框,几个用于分组的列变量和一个聚合
我的问题是关于 memcached。 Facebook 使用 memcached 作为其结构化数据的缓存,以减少用户的延迟。他们在 Linux 上使用 UDP 优化了 memcached 的性能。 h
在 Camel route ,我正在使用 exec 组件通过 grep 进行 curl ,但使用 ${HOSTNAME} 的 grep 无法正常工作,下面是我的 Camel 路线。请在这方面寻求帮助。
我正在尝试执行相当复杂的查询,在其中我可以排除与特定条件集匹配的项目。这是一个 super 简化的模型来解释我的困境: class Thing(models.Model) user = mod
我正在尝试执行相当复杂的查询,我可以在其中排除符合特定条件集的项目。这里有一个 super 简化的模型来解释我的困境: class Thing(models.Model) user = mod
我发现了很多嵌入/内容项目的旧方法,并且我遵循了在这里找到的最新方法(我假设):https://blog.angular-university.io/angular-ng-content/ 我正在尝试
我正在寻找如何使用 fastify-nextjs 启动 fastify-cli 的建议 我曾尝试将代码简单地添加到建议的位置,但它不起作用。 'use strict' const path = req
我正在尝试将振幅 js 与 React 和 Gatsby 集成。做 gatsby developer 时一切看起来都不错,因为它发生在浏览器中,但是当我尝试 gatsby build 时,我收到以下错
我试图避免过度执行空值检查,但同时我想在需要使代码健壮的时候进行空值检查。但有时我觉得它开始变得如此防御,因为我没有实现 API。然后我避免了一些空检查,但是当我开始单元测试时,它开始总是等待运行时异
尝试进行包含一些 NOT 的 Kibana 搜索,但获得包含 NOT 的结果,因此猜测我的语法不正确: "chocolate" AND "milk" AND NOT "cow" AND NOT "tr
我正在使用开源代码共享包在 iOS 中进行 facebook 集成,但收到错误“FT_Load_Glyph failed: glyph 65535: error 6”。我在另一台 mac 机器上尝试了
我正在尝试估计一个标准的 tobit 模型,该模型被审查为零。 变量是 因变量 : 幸福 自变量 : 城市(芝加哥,纽约), 性别(男,女), 就业(0=失业,1=就业), 工作类型(失业,蓝色,白色
我有一个像这样的项目布局 样本/ 一种/ 源/ 主要的/ java / java 资源/ .jpg 乙/ 源/ 主要的/ java / B.java 资源/ B.jpg 构建.gradle 设置.gr
如何循环遍历数组中的多个属性以及如何使用map函数将数组中的多个属性显示到网页 import React, { Component } from 'react'; import './App.css'
我有一个 JavaScript 函数,它进行 AJAX 调用以返回一些数据,该调用是在选择列表更改事件上触发的。 我尝试了多种方法来在等待时显示加载程序,因为它当前暂停了选择列表,从客户的 Angul
可能以前问过,但找不到。 我正在用以下形式写很多语句: if (bar.getFoo() != null) { this.foo = bar.getFoo(); } 我想到了三元运算符,但我认
我有一个表单,在将其发送到 PHP 之前我正在执行一些验证 JavaScript,验证后的 JavaScript 函数会发布用户在 中输入的文本。页面底部的标签;然而,此消息显示短暂,然后消失...
我是一名优秀的程序员,十分优秀!