Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/261.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 比较工作时间_Php_Html_Mysql - Fatal编程技术网

Php 比较工作时间

Php 比较工作时间,php,html,mysql,Php,Html,Mysql,我正在创建一个HTML表,它以两种不同的方式显示员工的时间分配。第一种方法是ajax更新的队列,它显示当前员工的位置,这已经完成 第二种类型是用户可以输入过去“分配”的表单。现在,因为我的业务是全天候的,所以我决定将所有时间作为日期时间存储在mysql中,这样我就可以得到以下区别: 2013-04-11 21:59:29和2013-04-12 01:52:29 以下是正在填写的表格: <form action="mafs.php" method="post" id="form1" nam

我正在创建一个HTML表,它以两种不同的方式显示员工的时间分配。第一种方法是ajax更新的队列,它显示当前员工的位置,这已经完成

第二种类型是用户可以输入过去“分配”的表单。现在,因为我的业务是全天候的,所以我决定将所有时间作为日期时间存储在mysql中,这样我就可以得到以下区别:

2013-04-11 21:59:29
2013-04-12 01:52:29

以下是正在填写的表格:

 <form action="mafs.php" method="post" id="form1" name="form1" class="">     

                    <table id="tbl_past_allocation">
                      <tr>
                        <td class="txt-right" style="font-size:11px;">Employee Name</td>
                        <td ><input placeholder=" John Doe" style="width:100px; border-radius:10px;" type="text" name="peename" id="peename" /></td>
                      </tr>
                      <tr>
                        <td class="txt-right" style="font-size:11px;">Home Department</td>
                        <td>          <select style="width:140px; border-radius:10px;" name="phomedept">

                <option value="select">Select Department</option></center>
                <option value="ADC/NFC Shipping Department">ADC/NFC Shipping Department</option>
                <option value="Administration">Administration</option>
                <option value="Receiving Department">Receiving Department</option>
                <option value="Cable">Cable Department</option>
                <option value="Department">CPM Department</option>
                <option value="Dispatch Clerk">Dispatch Clerk</option>
                </select></td>
                      </tr>

                      <tr>
                        <td class="txt-right" style="font-size:11px;">Sent to Department</td>
                        <td>          <select style="width:140px; border-radius:10px;" name="psentdept">

                <option value="select">Select Department</option></center>
                <option value="ADC/NFC Shipping Department">ADC/NFC Shipping Department</option>
                <option value="Administration">Administration</option>
                <option value="BP Receiving Department">BP Receiving Department</option>
                <option value="Cable Department">Cable Department</option>
                <option value="CPM Department">CPM Department</option>
                <option value="Dispatch Clerk">Dispatch Clerk</option>
                <option value="Inventory Control Department">Inventory Control Department</option>
                <option value="IRM Shipping Department">IRM Shipping Department</option>
                <option value="Kitting Department">Kitting Department</option>
                <option value="Lead">Lead</option>
                <option value="LSC Receiving Department">LSC Receiving Department</option>
                <option value="LSC Shipping Department">LSC Shipping Department</option>
                <option value="NAR E&O Department">NAR E & O Department</option>
                <option value="Non-Conformance Department">Non-Conformance Department</option>
                <option value="Performance Department">Performance Department</option>
                <option value="Quality Auditors">Quality Auditors</option>
                <option value="Quality Department">Quality Department</option>
                <option value="Returns Department">Returns Department</option>
                <option value="Software Department">Software Department</option>
                <option value="Special Ops Team">Special Ops Team</option>
                <option value="Supervisors">Supervisors</option>
                <option value="Training/Meetings/Projects">Training/Meetings/Projects</option>

                </select></td>
                      </tr>

                       <tr>
                        <td class="txt-right" style="font-size:11px;">Time Sent</td>
                    <td ><input placeholder=" mm-dd-yy hh:mm:ss" style="width:140px; border-radius:10px;" type="text" name="ptimesent" id="ptimesent" /></td>
                      </tr>

                      <tr>
                        <td class="txt-right" style="font-size:11px;">Time Returned</td>
             <td ><input placeholder=" mm-dd-yy hh:mm:ss" style="width:140px; border-radius:10px;" type="text" name="ptimereturned" id="ptimereturn" /></td>
                      </tr>


                    </table>
                    <!--tbl_equipment_details closed-->
                            <div>
         <input class="button" value="Submit Record" name="pastadd" type="submit" style="width:300px; cursor:pointer; margin-top:5px;">
                            </div>  
                            </form>

员工姓名
内政部
选择部门
ADC/NFC航运部
管理
接收部门
有线电视部
CPM部
调度员
发送到部门
选择部门
ADC/NFC航运部
管理
英国石油公司接收部
有线电视部
CPM部
调度员
盘存控制部
航运部
装备部
领导
LSC接收部门
LSC航运部
NAR E&O部
不符合部门
表演部
质量审计员
质量部
退货部
软件部
特别行动队
主管
培训/会议/项目
发送的时间
时光倒流
关于这件事,我遇到了一些不同的问题

  • 首先,我想知道什么格式最适合存储这种类型的时间

  • 用户在表单中输入此信息最简单的方法是什么?4个单独的输入,然后将它们连接在一起?或者2,只要求他们以指定的格式输入


  • 我认为单独的输入是最用户友好、最不容易出错的,因为它们都是选择框。然后将这些值合并在一起,对我个人来说,将它们转换为时间戳。时间戳也是全天候兼容的。:)

    我总是使用unix时间戳来保存我的gmt日期。然后比较它们,这是简单的数学

    <?php
    
    //
    // Some comparison stuff
    //
    
    // 1 day = 86400 seconds
    // mktime returns a unix timestamp.
    $date1 = mktime(0, 0, 0, 1, 1, 2013); // Jan. 1st, 2013
    $date2 = mktime(0, 0, 0, 1, 15, 2013); // Jan. 15th, 2013
    
    // Get the difference
    $diff = ($date2 / 86400) - ($date1 / 86400); // 14
    
    echo $diff;
    
    //
    // Some conversion stuff
    //
    // Use mktime([$hour, $min, $sec, $mon, $day, $year]) if you have 
    // a specific date you want converted into a timestamp, else use 
    // time(), which is the current timestamp.
    //
    // Convert to human readable format
    // 
    $datetime = date("H:i:sa - M jS, Y", $timestamp); // $timestamp optional
    
    echo $datetime; // e.g. 4:23:46pm - Jan 1st, 2013
    
    ?>
    
    如果我做了任何不正确的假设,请不要犹豫纠正我。
    谢谢

    您的应用程序是否需要关注不同的时区?请使用日期选择器和时间选择器,这样您的用户就不会在输入信息时遇到太多麻烦。jQueryUI提供了日期选择器,至于时间选择器,我相信互联网上有很多。时区不是一个因素。我会尝试一下。感谢您的回复。这还允许您将保存时间戳的字段设置为整数类型,默认的“int”使用了一半的存储大小,4字节,而datetime为8字节。虽然时间戳数据类型也只有4字节,但这实际上归结为程序员偏好/比较困难。
    The TIMESTAMP data type is used for values that contain both date and time parts.   
    TIMESTAMP has a range of '1970-01-01 00:00:01' UTC to '2038-01-19 03:14:07' UTC.