| Server IP : 103.48.194.25 / Your IP : 216.73.217.33 Web Server : Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.4.33 System : Linux VMHostDefault 3.10.0-1160.42.2.el7.x86_64 #1 SMP Tue Sep 7 14:49:57 UTC 2021 x86_64 User : sieuthimay ( 1016) PHP Version : 8.2.20 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /var/www/ngoaingusonganh.com-bk/public_html/webadmin/controllers/ |
Upload File : |
<?php
class member extends CI_Controller
{
protected $_templates;
function __construct()
{
parent::__construct();
$this->pre_message = "";
$this->load->model('member_model','member');
$this->permit_library->check_permit();
$this->session->set_userdata(array('Url'=>uri_string()));
}
function index()
{
$this->listmember();
}
function listmember()
{
$data['title'] = 'Quản lý thành viên';
$config['base_url'] = base_url().'member/listmember/';
$config['total_rows'] = $this->member->getNumMember();
$data['num'] = $config['total_rows'];
$config['per_page'] = 20;
$config['uri_segment'] = 3;
$this->pagination->initialize($config);
$data['list'] = $this->member->getAllMember($config['per_page'],$this->uri->segment('3'));
$data['pagination'] = $this->pagination->create_links();
$this->form_validation->set_rules('user_fullname','Họ tên','trim|required');
$this->form_validation->set_rules('user_pass','Mật khẩu','trim|required|matches[user_pass1]');
$this->form_validation->set_rules('user_pass1','Mật khẩu nhắc lại','trim|required');
$this->form_validation->set_rules('user_email','Email','trim|required|valid_email');
if($this->form_validation->run()){
if($this->member->savemember()){
$this->session->set_flashdata('message','Thêm mới thành viên thành công');
redirect('member');
}
}
$data['page'] = 'member/index';
$this->load->view("layout/skin",$data);
}
function _check_user_reg($user_login)
{
if (strlen($user_login) != strlen(utf8_decode($user_login))){
$this->form_validation->set_message('_check_user_reg', 'Tên đăng nhập không sử dụng Tiếng Việt có dấu');
return false;
}else{
if(preg_match("/^[A-Za-z][A-Za-z0-9]*$/", $user_login)){
$this->db->where('user_login',$user_login);
$check = $this->db->get('users');
if($check->num_rows() != 0){
$this->form_validation->set_message('_check_user_reg', 'Tên đăng nhập đã có người sử dụng');
return FALSE;
}else{
return true;
}
}else{
$this->form_validation->set_message('_check_user_reg', 'Tên đăng nhập không sử dụng các ký tự đặc biệt');
return false;
}
}
}
function add()
{
$data['title'] = 'Thêm mới thành viên';
$data['listcity'] = $this->member->get_all_city();
if(!empty($_POST['bt_submit'])){
$this->form_validation->set_rules('FullName','Họ và tên','trim|required');
$this->form_validation->set_rules('Email','Email','trim|required|callback__check_email');
$this->form_validation->set_rules('Passwd','Mật khẩu','trim|required');
$this->form_validation->set_rules('re_Passwd','Nhắc lại mật khẩu','trim|required|matches[Passwd]');
if($this->form_validation->run() == FALSE){
$this->pre_message = validation_errors();
}else{
if($this->member->savemember()){
$this->session->set_flashdata('message','Lưu thành công');
redirect('member/listmember');
}else{
$this->pre_message = 'Lưu không thành công';
}
}
}
$data['message'] = $this->pre_message;
$data['page'] = 'member/add';
$this->load->view("layout/skin",$data);
}
function _check_email($Email)
{
$this->db->where('Email',$Email);
$query = $this->db->get('account');
if($query->num_rows() > 0){
$this->form_validation->set_message('_check_email', 'Email đã được sử dụng');
return FALSE;
}else{
return TRUE;
}
}
function _check_account($LoginName)
{
$this->db->where('LoginName',$LoginName);
$query = $this->db->get('account');
if($query->num_rows() > 0){
$this->form_validation->set_message('_check_account', 'Tên đăng nhập đã được sử dụng');
return FALSE;
}else{
return TRUE;
}
}
function edit()
{
$data['rs'] = $this->member->get_info_member();
$data['title'] = 'Cập nhật thành viên';
if(!empty($_POST['bt_submit'])){
$this->form_validation->set_rules('cusname','Họ và tên','trim|required');
$this->form_validation->set_rules('cusmail','Email','trim|required|callback__check_email_edit');
$this->form_validation->set_rules('re_Passwd','Nhắc lại mật khẩu','trim|matches[Passwd]');
if($this->form_validation->run() == FALSE){
$this->pre_message = validation_errors();
}else{
if($this->member->saveupdate()){
$this->session->set_flashdata('message','Lưu thành công');
redirect('member/listmember');
}else{
$this->pre_message = 'Lưu không thành công';
}
}
}
$data['message'] = $this->pre_message;
$data['page'] = 'member/edit';
$this->load->view("layout/skin",$data);
}
function _check_email_edit($Email)
{
$cusid = $this->input->post('cusid');
$this->db->where('cusid <>',$cusid);
$this->db->where('cusmail',$Email);
$query = $this->db->get('customer');
if($query->num_rows() > 0){
$this->form_validation->set_message('_check_email_edit', 'Email đã được sử dụng');
return FALSE;
}else{
return TRUE;
}
}
function _check_account_edit($LoginName)
{
$cusid = $this->input->post('cusid');
$this->db->where('cusid <>',$cusid);
$this->db->where('LoginName',$LoginName);
$query = $this->db->get('account');
if($query->num_rows() > 0){
$this->form_validation->set_message('_check_account_edit', 'Tên đăng nhập đã được sử dụng');
return FALSE;
}else{
return TRUE;
}
}
function del()
{
$id = $this->uri->segment(3);
$page = $this->uri->segment(4);
if($this->member->delete($id))
$this->session->set_flashdata('message','Đã xóa thành công');
else $this->session->set_flashdata('message','Xóa không thành công');
redirect('member/listmember/'.$page);
}
function dels()
{
if(!empty($_POST['ar_id']))
{
$page = (int)$this->input->post('page');
$ar_id = $this->input->post('ar_id');
if(!empty($_POST['btn_submit']))
{
for($i = 0; $i < sizeof($ar_id); $i ++) {
if ($ar_id[$i]){
if($this->member->delete($ar_id[$i]))
$this->session->set_flashdata('message','Đã xóa thành công');
else $this->session->set_flashdata('message','Xóa không thành công');
}
}
}
}
redirect('member/listmember/'.$page);
}
function timkiem()
{
$data['title'] = 'Tìm kiếm';
$tuychon = $this->uri->segment(3);
$key = $this->uri->segment(4);
$config['base_url'] = base_url().'member/timkiem/'.$tuychon.'/'.$key;
$config['total_rows'] = $this->member->getNumTimkiem($key,$tuychon);
$config['per_page'] = 20;
$config['uri_segment'] = 5;
$this->pagination->initialize($config);
$data['list'] = $this->member->getALLTimkiem($config['per_page'],$this->uri->segment('5'),$key,$tuychon);
$data['pagination'] = $this->pagination->create_links();
$data['page'] = 'member/timkiem';
$this->load->view("layout/skin",$data);
/*
$data['key'] = $this->input->post('key');
$data['tuychon'] = $this->input->post('tuychon');
$limit = 10;
$data['limit'] = $limit;
$offset = (int)$this->input->post('page_no');
$data['offset'] = $offset;
$num = $this->member->getNumTimkiem($data['key'],$data['tuychon']);
if($offset!=0)
$start = ($offset - 1) * $limit;
else
$start = 0;
$data['list'] = $this->member->getAllTimkiem($limit,$start,$data['key'],$data['tuychon']);
$data['pagination'] = $this->pagination_library->pagination($num,$offset,$limit,'');
$this->load->view('member/timkiem',$data);
*/
}
function thongke()
{
$data['title'] = 'Thống kê thành viên';
$this->form_validation->set_rules('tungay','Ngày bắt đầu','required');
$this->form_validation->set_rules('denngay','Ngày kết thúc','required');
if($this->form_validation->run() == false){
$this->pre_message = validation_errors();
}else{
$list = $this->member->get_thongke();
ini_set('memory_limit', '100M');
memory_get_peak_usage(true);
require_once APPEXCEL.'excel/PHPExcel.php';
// Create new PHPExcel object
$this->phpexcel = new PHPExcel();
// Set properties
$this->phpexcel->getProperties()->setCreator("Tran Ngoc Duoc")
->setLastModifiedBy("Tran Ngoc Duoc")
->setTitle("Thong ke san pham quang cao")
->setSubject("Thong ke san pham quang cao")
->setDescription("File thong ke san pham quang cao. Author: Tran Ngoc Duoc. Website:http://360vnit.com.")
->setKeywords("office 2007 openxml php")
->setCategory("Thong ke san pham quang cao");
$this->phpexcel->getDefaultStyle()->getFont()->setName('Arial');
$this->phpexcel->getDefaultStyle()->getFont()->setSize(10);
// SET HEADER FILE EXCEL
$this->phpexcel->setActiveSheetIndex(0)->setCellValue('A1', 'Thống kê thành viên đăng ký từ '.$this->input->post('tungay').' đên ngày '.$this->input->post('denngay'));
//STT
$this->phpexcel->setActiveSheetIndex(0)->setCellValue('A3', 'STT');
//Ho ten
$this->phpexcel->setActiveSheetIndex(0)->setCellValue('B3', 'Họ tên');
$this->phpexcel->getActiveSheet()->getColumnDimension('B')->setWidth(30);
// Email
$this->phpexcel->setActiveSheetIndex(0)->setCellValue('C3', 'Email');
$this->phpexcel->getActiveSheet()->getColumnDimension('C')->setWidth(30);
// Dien thoai
$this->phpexcel->setActiveSheetIndex(0)->setCellValue('D3', 'Điện thoại');
$this->phpexcel->getActiveSheet()->getColumnDimension('D')->setWidth(15);
// Dia chi
$this->phpexcel->setActiveSheetIndex(0)->setCellValue('E3', 'Địa chỉ');
$this->phpexcel->getActiveSheet()->getColumnDimension('E')->setWidth(50);
// Thanh pho
$this->phpexcel->setActiveSheetIndex(0)->setCellValue('F3', 'Tỉnh/ Thành phố');
$this->phpexcel->getActiveSheet()->getColumnDimension('F')->setWidth(30);
// Ngay dang ky
$this->phpexcel->setActiveSheetIndex(0)->setCellValue('G3', 'Ngày đăng ký');
$this->phpexcel->getActiveSheet()->getColumnDimension('G')->setWidth(20);
$i=4;
$k=1;
foreach($list as $rs):
$this->phpexcel->setActiveSheetIndex(0)->setCellValue('A'.$i, $k);
//HO ten
$this->phpexcel->setActiveSheetIndex(0)->setCellValue('B'.$i, $rs->FullName);
// Email
$this->phpexcel->setActiveSheetIndex(0)->setCellValue('C'.$i, $rs->Email);
// Dienthoai
$this->phpexcel->setActiveSheetIndex(0)->setCellValue('D'.$i, (string)$rs->PhoneNumber);
// Dia chi
$this->phpexcel->setActiveSheetIndex(0)->setCellValue('E'.$i, $rs->Address);
// Thanh pho
$this->phpexcel->setActiveSheetIndex(0)->setCellValue('F'.$i, $this->member->get_city_by_id($rs->CityID));
// Ngay dang ky
$this->phpexcel->setActiveSheetIndex(0)->setCellValue('G'.$i,date('d/m/Y',$rs->RegisteredDate));
$i++;
$k++;
endforeach;
//set Font
$this->phpexcel->getActiveSheet()->getStyle('A1')->getFont()->setBold(true);
$this->phpexcel->getActiveSheet()->getStyle('A2')->getFont()->setBold(true);
// Witdh
$this->phpexcel->getActiveSheet()->getColumnDimension('A')->setWidth(5);
$this->phpexcel->getActiveSheet()->getStyle('A1')->getFont()->setName('Tahoma');
$this->phpexcel->getActiveSheet()->getStyle('A1')->getFont()->setSize(14);
$this->phpexcel->getActiveSheet()->getStyle('A2')->getFont()->setName('Tahoma');
$this->phpexcel->getActiveSheet()->getStyle('A2')->getFont()->setSize(14);
// Rename sheet
$this->phpexcel->getActiveSheet()->setTitle('Thongke');
// Set active sheet index to the first sheet, so Excel opens this as the first sheet
$this->phpexcel->setActiveSheetIndex(0);
$date = date('h_i_s_d_m_Y',time());
// Redirect output to a client’s web browser (Excel5)
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="thong_ke_thanh_vien_'.$date.'.xls"');
header('Cache-Control: max-age=0');
$objWriter = PHPExcel_IOFactory::createWriter( $this->phpexcel, 'Excel5');
$objWriter->save('php://output');
exit;
}
$data['message'] = $this->pre_message;
$data['page'] = 'member/thongke';
$this->load->view("layout/skin",$data);
}
}
?>