小编Mal*_*sar的帖子

PHP的时差

我正在尝试建立一个考勤系统. PHP中的考勤系统

在结账时我调用一个更新数据库出勤率并计算小时数的函数(使用Codeigniter)

public function updateAttendance($data,$id)
    {
    date_default_timezone_set('Asia/Karachi');
    $attendance=array(
        'check_in'=> $data['check_in'],
        'check_out'=> $data['check_out']
    );
    $this->db->WHERE('id',$id)->update('attendance',$attendance);
    $this->db->query('UPDATE attendance SET hours=(HOUR(TIMEDIFF(check_out,check_in))-1) WHERE DATE(date)=\''.date('Y-m-d').'\' and employee_id='.$id);
    return true;
}
Run Code Online (Sandbox Code Playgroud)

我通过员工ID获取我的出勤率,并在员工的个人资料中呈现这样的视图.

员工出勤

问题是我的小时计算错误,可能是由于我的查询.是否有查询修复,或者我必须以时间格式保持时间差异,然后在月末添加所有这些,然后从中获取数小时.

php codeigniter

6
推荐指数
1
解决办法
2736
查看次数

在PHP中自动检测360自然的图像

我正在渲染下面的Property Detail页面(可以在这里访问) 在此输入图像描述

我有一个图像滑块和一个360图像查看器.目前,用户手动上传两种类型的图像,即来自一个界面的普通图像和来自其他界面的360图像.我检查属性是否有360个图像并使用全景查看器显示它们.

我使用以下Controller上传360图像,类似于上传普通图像.

public function upload_360_images()
{
    if($this->session->userdata['id'] && $this->session->userdata['type']=='user')
    {
        if($_FILES)
        {
            if(isset($_FILES['files'])){
                $data['errors']= array();
                $extensions = array("jpeg","jpg","png");

                foreach($_FILES['files']['tmp_name'] as $key => $tmp_name ){

                    $file_name = $key.$_FILES['files']['name'][$key];
                    $file_size =$_FILES['files']['size'][$key];
                    $file_tmp =$_FILES['files']['tmp_name'][$key];
                    $file_type=$_FILES['files']['type'][$key];
                    /*$file_ext=explode('.',$_FILES['image']['name'][$key]) ;
                    $file_ext=end($file_ext);*/
                    $i=1;
                    if($file_size > 7097152){
                        $data['errors'][$i]='File '.$i.' size must be less than 7 MB';
                        $i++;
                    }

                    $desired_dir="uploads";
                    if(empty($data['errors'])==true){
                        if(is_dir($desired_dir)==false){
                            mkdir("$desired_dir", 0700);        // Create directory if it does not exist
                        }
                        if(is_dir("$desired_dir/".$file_name)==false){
                            move_uploaded_file($file_tmp,"uploads/".$file_name);
                            $this->post_model->add360Image('property_360_images',$file_name,$this->uri->segment(3));
                        }else{                                  //rename the file if another one exist
                            $new_dir="uploads/".$file_name.time(); …
Run Code Online (Sandbox Code Playgroud)

php codeigniter image 360-panorama-viewer 360-virtual-reality

5
推荐指数
1
解决办法
1178
查看次数

Codeigniter表格验证规则匹配(密码)

我正在尝试在我的Controller中编写表单验证规则以提交更改密码表单,我也在其中检查旧密码.我从db获取旧密码(当前)并将其放在隐藏的输入字段中.

我的规则很简单,如下所示

         $config=array(
            array(
                'field'   => 'old_password',
                'label'   => 'oldpass',
                'rules'   => 'trim|required'
            ),
            array(
                'field'   => 'conf_password',
                'label'   => 'connewpass',
                'rules'   => 'trim|required|matches[password]'
            ),
            array(
                'field'   => 'password',
                'label'   => 'newpass',
                'rules'   => 'trim|required'
            )
Run Code Online (Sandbox Code Playgroud)

我保存当前密码的表单中的隐藏输入字段就像

<input type="hidden" name="old_pass" value="<?php echo $user['password']?>">
Run Code Online (Sandbox Code Playgroud)

我知道规则中的匹配(字段名称)用于匹配两个字段值,但我遇到的问题是来自db的密​​码是md5加密的.如何加密来自表单的密码并与规则中的旧密码字段匹配?

php forms validation codeigniter

4
推荐指数
1
解决办法
3万
查看次数

在 JavaScript 中填充 substr 中的空白

我有一个随机长度的字符串数组。我想打印每个字符串的子字符串,但我希望字符长度固定,例如

for(i=0;i<length;i++)
{
   source=(namesArray[i]['name']).substr(0,10);
}
Run Code Online (Sandbox Code Playgroud)

现在这段代码工作正常,它给了我最多 10 个字符,但对于那些少于 10 个字符的名称,我想为缺少的字符打印空格。是否可以 ?

javascript

-2
推荐指数
1
解决办法
1505
查看次数