- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
-----更新-----
非常感谢@Tin Tran。以下是任何感兴趣的人的工作代码:
db_functions.php:
function fill_appts($id_sales) {
include '../scripts/mysql_login_pdo.php';
$query = "SELECT leads.fname,
leads.lname,
leads.addr_city,
appointments.appt_date,
appointments.appt_time,
appointments.id_lead,
d.dayDesc
FROM ( SELECT 'Monday' as dayDesc,1 as dayOrder
UNION SELECT 'Tuesday', 2
UNION SELECT 'Wednesday', 3
UNION SELECT 'Thursday', 4
UNION SELECT 'Friday', 5
UNION SELECT 'Saturday', 6
UNION SELECT 'Sunday', 7
)as d
LEFT JOIN appointments ON (DAYNAME(appointments.appt_date) = d.dayDesc)
INNER JOIN leads ON (leads.id = appointments.id_lead)
WHERE MONTH(appointments.appt_date) = MONTH(NOW())
AND appointments.id_sales = :id_sales
ORDER BY appointments.appt_date ASC,appointments.appt_time ASC,d.dayOrder ASC";
$stmt = $db->prepare($query);
$stmt->execute(array(
':id_sales' => $id_sales
));
$lastDay = '';
$last_appt_date = '';
$schedule_appts = '';
$schedule_appts .= '<table class="appointments">';
while ($row = $stmt->fetchObject()) {
$id_lead = $row->id_lead;
$fname = $row->fname;
$lname = $row->lname;
$addr_city = $row->addr_city;
$appt_date = $row->appt_date;
$appt_time = $row->appt_time;
$dayName = $row->dayDesc;
if (($dayName != $lastDay) && ($appt_date != $last_appt_date)) {
$schedule_appts .= "<tr class='weekday' value='$appt_date'><td>" . date('l m/d', strtotime($appt_date)) . "</td></tr>";
}
$schedule_appts .= "<tr id='$id_lead'><td><div class='appt'>" .
$fname . ' ' . $lname . '<br />' .
$appt_date . '<br />' .
$appt_time . "</div></td></tr>";
$lastDay = $dayName;
$last_appt_date = $appt_date;
}
$schedule_appts .= '</table>';
$db = null;
return $schedule_appts;
结果: -----更新结束-----
-----更新-----
今天早上做了一点工作。我使用更改的代码获得了重复的日期名称。关于如何选择不同的工作日有什么想法吗?
db_functions.php:
...
function fill_appts($id_sales) {
include '../scripts/mysql_login_pdo.php';
$query = "SELECT `leads`.`fname`, "
. "`leads`.`lname`, "
. "`leads`.`addr_city`, "
. "`appointments`.`appt_date`, "
. "`appointments`.`appt_time`, "
. "`appointments`.`id_lead` "
. "FROM `leads`,`appointments` "
. "WHERE `leads`.`id` = `appointments`.`id_lead` "
. "AND MONTH(`appointments`.`appt_date`) = MONTH(NOW()) "
. "AND `appointments`.`id_sales` = :id_sales "
. "ORDER BY `appointments`.`appt_time` ASC";
$stmt = $db->prepare($query);
$stmt->execute(array(
':id_sales' => $id_sales
));
$schedule_appts = '';
$schedule_appts .= '<table class="appointments">';
while ($row = $stmt->fetchObject()) {
$id_lead = $row->id_lead;
$fname = $row->fname;
$lname = $row->lname;
$addr_city = $row->addr_city;
$appt_date = $row->appt_date;
$appt_time = $row->appt_time;
//------------------------Problematic area-----------------------
$schedule_appts .= "<tr class='weekday' value='$appt_date'><td>" . date('l', strtotime($appt_date)) . "</td></tr>";
//---------------------------------------------------------------
$schedule_appts .= "<tr id='$id_lead'><td><div class='appt'>" .
$fname . ' ' . $lname . '<br />' .
$appt_date . '<br />' .
$appt_time . "</div></td></tr>";
}
$schedule_appts .= '</table>';
$db = null;
return $schedule_appts;
}
...
-----结束更新-----
这是以下帖子的延续: PHP/MySQL - Dispatch Scheduler - Vertical Column
如前一篇文章所述,我离目标越来越近了。我正处于我希望约会在适当的工作日下方垂直堆叠的地步。我将展示我所拥有的和我想要的东西的图像,因为这会更容易理解。
我有什么:
我想要的:
这是我的代码,它生成第一张图片。我在“fill_appts”函数中指出了我认为我的问题所在:
日程表.php:
...
<div id="schedule_wrapper_all">
<?php print get_schedule_all(); ?>
</div>
...
db_functions.php:
function get_schedule_all() {
$headers = get_table_headers();
$appointments = appointments();
$schedule_builder = '';
$schedule_builder .= '<table class="appt_table">';
$schedule_builder .= $headers;
$schedule_builder .= $appointments;
$schedule_builder .= '</table>';
return $schedule_builder;
}
function get_table_headers() {
include '../scripts/mysql_login_pdo.php';
$query = "SELECT DISTINCT `appointments`.`id_sales`,`users`.`fname`,`users`.`lname` "
. "FROM `appointments`,`users` "
. "WHERE `appointments`.`id_sales` = `users`.`id` "
. "ORDER BY `appointments`.`id_sales` ASC";
$stmt = $db->prepare($query);
$stmt->execute();
$schedule_headers = '';
$schedule_headers .= '<tr>';
while ($row = $stmt->fetchObject()) {
$id_sales = $row->id_sales;
$fname = $row->fname;
$lname = $row->lname;
$schedule_headers .= "<th id='$id_sales'>" . $fname . ' ' . $lname . "</th>";
}
$schedule_headers .= '</tr>';
$db = null;
return $schedule_headers;
}
function fill_appts($id_sales) {
include '../scripts/mysql_login_pdo.php';
$query = "SELECT `leads`.`fname`, "
. "`leads`.`lname`, "
. "`leads`.`addr_city`, "
. "`appointments`.`appt_date`, "
. "`appointments`.`appt_time`, "
. "`appointments`.`id_lead` "
. "FROM `leads`,`appointments` "
. "WHERE `leads`.`id` = `appointments`.`id_lead` "
. "AND MONTH(`appointments`.`appt_date`) = MONTH(NOW()) "
. "AND `appointments`.`id_sales` = :id_sales "
. "ORDER BY `appointments`.`appt_time` ASC";
$stmt = $db->prepare($query);
$stmt->execute(array(
':id_sales' => $id_sales
));
$schedule_appts = '';
$schedule_appts .= '<table class="appointments">';
$schedule_appts .= get_weekdays();
while ($row = $stmt->fetchObject()) {
$id_lead = $row->id_lead;
$fname = $row->fname;
$lname = $row->lname;
$addr_city = $row->addr_city;
$appt_date = $row->appt_date;
$appt_time = $row->appt_time;
------------------------------------------------------------------------------------
//THIS IS WHERE I BELIEVE I NEED TO LOOP THROUGH RESULTS AGAIN:
// foreach ($day as $weekday){
$schedule_appts .= "<tr id='$id_lead'><td><div class='appt'>" .
$fname . ' ' . $lname . '<br />' .
$appt_date . '<br />' .
$appt_time . "</div></td></tr>";
// }
//END LOOP
------------------------------------------------------------------------------------**
}
$schedule_appts .= '</table>';
$db = null;
return $schedule_appts;
}
function appointments() {
include '../scripts/mysql_login_pdo.php';
$query = "SELECT DISTINCT `id_sales` FROM `appointments` ORDER BY `id_sales` ASC";
$stmt = $db->prepare($query);
$stmt->execute();
$appointments = '';
$appointments .= '<tr>';
while ($row = $stmt->fetchObject()) {
$id_sales = $row->id_sales;
$appointments .= '<td>';
$appointments .= fill_appts($id_sales);
$appointments .= '</td>';
}
$appointments .= '</tr>';
$db = null;
return $appointments;
}
function get_weekdays() {
$monday = date("Y-m-d",strtotime('monday this week'));
$tuesday = date("Y-m-d",strtotime('tuesday this week'));
$wednesday = date("Y-m-d",strtotime('wednesday this week'));
$thursday = date("Y-m-d",strtotime('thursday this week'));
$friday = date("Y-m-d",strtotime('friday this week'));
$saturday = date("Y-m-d",strtotime('saturday this week'));
$sunday = date("Y-m-d",strtotime('sunday this week'));
$week = "<tr class='weekday' value='$monday'><td>Monday</td></tr>"
. "<tr class='weekday' value='$tuesday'><td>Tuesday</td></tr>"
. "<tr class='weekday' value='$wednesday'><td>Wednesday</td></tr>"
. "<tr class='weekday' value='$thursday'><td>Thursday</td></tr>"
. "<tr class='weekday' value='$friday'><td>Friday</td></tr>"
. "<tr class='weekday' value='$saturday'><td>Saturday</td></tr>"
. "<tr class='weekday' value='$sunday'><td>Sunday</td></tr>";
return $week;
}
如您在我的函数中所见,这显示了给定月份内所有员工的所有约会。我同意脚本为每个月的每一天生成工作日名称,或者动态地只在当天安排约会时才生成工作日。我基于一周编写了“get_weekdays”函数,需要对其进行更新以检查一个月内的每一天。如果那部分太多了,我会继续研究答案。
提前感谢您的指导。与上一篇文章一样,我不是在找人为我编写函数,只是在正确的方向上给我一记 ;)
最佳答案
看看DAYNAME()功能。然后也许不是获取所有工作日,而是一次获取一个并循环遍历您的结果集以查看它是否是同一天并将其打印出来。要重置到结果集的开头,您可以使用 http://www.php.net/manual/en/mysqli-result.data-seek.php
正如我的评论中提到的:尝试下面的查询并查看
SELECT leads.fname,
leads.lname,
leads.addr_city,
appointments.appt_date,
appointments.appt_time,
appointments.id_lead,
d.dayDesc
FROM ( SELECT 'Monday' as dayDesc,1 as dayOrder
UNION SELECT 'Tuesday', 2
UNION SELECT 'Wednesday', 3
UNION SELECT 'Thursday', 4
UNION SELECT 'Friday', 5
UNION SELECT 'Saturday', 6
UNION SELECT 'Sunday', 7
)as d
LEFT JOIN appointments ON (DAYNAME(appointments.appt_date) = d.dayDesc)
INNER JOIN leads ON (leads.id = appointments.id_lead)
WHERE MONTH(appointments.appt_date) = MONTH(NOW())
AND appointments.id_sales = :id_sales
ORDER BY d.dayOrder ASC,appointments.appt_time ASC
关于PHP/MySQL - 在适当的工作日安排约会,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21011009/
我们有一个接口服务为下游的系统提供数据服务,本来好好的大家都愉快地传递JSON,非常和谐。可最近有个新需求去对接一个很老的系统,这倒是不算啥,可这个老系统数据不是以JSON传递的而是以XML传递
我想完成这样的事情: results = [] for i in range(N): data = generate_data_slowly() res = tasks.process
如何安排 SSIS 每天在给定时间从文件中自动执行包? 最佳答案 你有几个选择,但我会给你一些让你快速启动和运行的东西...... 打开 SQL Server Management Studio 并连
我们有两个服务器 Azure 配置,运行由 Umbraco 提供支持的网站。当我们需要向Azure服务器添加新域时,我们修改配置文件,然后依次重新启动每台服务器。 理论上,因为我们永远不会同时重新启动
我给出了一个创建电子邮件 C# 控制台应用程序的任务,该应用程序的目标是批量运行。我对 C# 领域非常陌生,因此我不知道我的方向。此 C# 控制台应用程序将部署在服务器上,并期望根据服务器时间在特定时
我有一个控制台应用程序,运行时会执行一些操作,并使用docker生成它的镜像。现在,我想将其部署到Kubernetes并每小时运行一次,是否有可能在K8中完成? 我已经阅读了有关Cron作业的信息,但
这是我的 CronJob 规范的一部分: kind: CronJob spec: schedule: #{service.schedule} 对于特定环境,设置了 cron 作业,但我从不希望
我的任务是创建一个应用程序,该应用程序将每 (n) 分钟向选定的收件人发送一封电子邮件。它所在的应用程序的结构方式是通过回调 .main(args) 来重置自身。每当需要的时候。我的问题是,当我调用.
安排 Airflow Dag 使其仅在工作日运行的正确方法是什么?我已经尝试在 start_date 和 schedule_interval 表达式中都包含小时偏移量,但它仍然没有在所需的时间开始。
我有许多测试都安排了一些 TestFixtures,我发现我正在复制该安排代码很多。每个测试的前几行几乎相同。 有没有一种方法可以在所有测试中声明一个共享的 TestFixture,同时仍然在每个测试
我有一个问题,我正在创建一个应用程序,我想在系统与 azan 时间匹配时在后台播放 azan 文件,无论用户正在使用应用程序的任何屏幕,azan 都应该开始播放。 我在 Azan.java 中创建了一
在我没有重启我的手机之前一直在 toast ,但是在重启之后 broadcastreceiver2 没有收到并且没有任何反应。 我关注了http://stacktips.com/tutorials/a
自动将一个数据库表的表数据复制到另一个数据库表;当表格更新或按某个特定时间间隔更新时,安排 数据库MySQL;语言 PHP 我有两个数据库; A和B 数据库 A 包含一个表 USERS 我想将USER
我的 Android 应用程序将定期轮询服务器以检查数据。我希望无论用户与应用程序交互如何进行此轮询,类似于(在概念上)Gmail 和 Google Reader 应用程序如何在后台同步数据。安装应用
我可以将android中的警报管理器(.set()方法)安排到当前时间一个月后的时间吗它会活那么久吗?操作系统对此 alarmManager 有何影响? 最佳答案 用户重启手机时的提示。您可以使用以下
安排 AsyncTask 每分钟运行一次的最佳做法是什么(请注意,在 AsyncTask 完成后我应该能够更新 UI)。 我不打算使用服务,因为这些任务应该只在应用处于 Activity 状态时运行。
我在排列从 php 中的 while 循环返回的数据时遇到问题。 基本上,我正在尝试从数据库返回工作的时间段计划,问题是我似乎在所有时间段中得到相同的结果,或者在一个时间段中的所有客户端得到相同的结果
我想创建一个仅在周六和周四运行的 mysql 事件。 是否可以定义事件本身的日期? 我有一个想法,每天运行调度程序,如果是星期四或星期六,则该过程将继续,否则它将退出调度程序而不执行任何操作。 最佳答
如何使用 MySQL 调度程序安排查询运行(如果这是最好的方法)?我按照 link here 中的说明进行操作但我有点迷路了。 我想在我们拥有的特定数据库上每 30 分钟运行一次以下查询。 u
我想在使用事件轮换我的日志后读取我的表日志,我希望我的事件在我选择的一周中的任何一天运行。 经过一番研究,我想到了这个 CREATE EVENT read_rotated_logs ON SCHEDU
我是一名优秀的程序员,十分优秀!