* 개발일정 : 22/09/06 ~ 22/09/13
'웹 싱니 > 그룹웨어 (22.02 ~ 22.07 )' 카테고리의 다른 글
공지/게시검색 페이지 (0) | 2022.05.27 |
---|---|
문서이동 페이지 (0) | 2022.05.26 |
최근게시물 페이지 (0) | 2022.05.26 |
명함관리 페이지 (0) | 2022.05.24 |
명함그룹관리 페이지 (0) | 2022.05.18 |
* 개발일정 : 22/09/06 ~ 22/09/13
공지/게시검색 페이지 (0) | 2022.05.27 |
---|---|
문서이동 페이지 (0) | 2022.05.26 |
최근게시물 페이지 (0) | 2022.05.26 |
명함관리 페이지 (0) | 2022.05.24 |
명함그룹관리 페이지 (0) | 2022.05.18 |
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<table id="table">
<thead></thead>
<tbody></tbody>
</table>
</body>
</html>
<script>
function drawDateTable() {
//예시 데이터
stDate = new Date('2022-09-19');
endDate = new Date('2022-10-02');
var diffTime = endDate.getTime() - stDate.getTime();
var diffDay = diffTime / (1000*60*60*24);
var conDate = [];
for(var i=0; i <= diffDay; i++) {
var nextDate = new Date(
stDate.getFullYear(),
stDate.getMonth(),
stDate.getDate() + i
);
var year = nextDate.getFullYear();
var month = nextDate.getMonth() + 1;
var day = nextDate.getDate();
var dateFormat = year + '/' + month + '/' + day;
dateFormat = dateFormat.substr(2);
conDate.push(dateFormat);
}
//thead
var html = '';
html += '<tr>';
$(conDate).each(function(i, date) {
html += '<th style="width:2.5%">' + date + '</th>';
});
html += '</tr>';
//테이블id
$("#table thead").empty().append(html);
//tbody
html = '';
html += '<tr>';
$(conDate).each(function(i, date) {
html += '<td></td>';
});
html += '</tr>';
$("#table tbody").empty().append(html);
}
</script>
- 기간을 함수 파라미터값으로 넣어주면 기간만큼의 날짜가 나열됨
[Javascript] [Jquery] 천단위 숫자 콤마(,) 붙이기 (소수점 포함) (1) | 2022.06.23 |
---|
<html>
<body>
<input type="text" onkeyup="numberToCommas(this)" />
</body>
</html>
키보드를 누를 때마다 함수를 호출
function numberToCommas(obj) {
var n = obj.value;
if (n == "") {
obj.value = "";
}
//음수 계산
var minus = '';
if(n.charAt(0) == "-") {
var minus = "-";
}
//문자열, 소수점2개 제한
n = n.replace(/[^0-9.]/g, '').replace(/(\..*)\./g, '$1');
//콤마 지우기
n = n.replace(/\,/g, '');
//소수점 유무
if(n.indexOf('.') > 0) {
var decimal = n.split('.');
var integer = decimal[0].replace(/(\d)(?=(?:\d{3})+(?!\d))/g, '$1,');
//마이너스 붙이기
obj.value = minus + integer + '.' + decimal[1];
} else {
//마이너스 붙이기
obj.value = minus + n.replace(/(\d)(?=(?:\d{3})+(?!\d))/g, '$1,');
}
}
정규표현식 뻐큐
[Javascript][Jquery] 기간에 따른 연속 날짜 나열하기 (1) | 2022.09.15 |
---|
근태기초설정 페이지 (0) | 2022.10.04 |
---|---|
문서이동 페이지 (0) | 2022.05.26 |
최근게시물 페이지 (0) | 2022.05.26 |
명함관리 페이지 (0) | 2022.05.24 |
명함그룹관리 페이지 (0) | 2022.05.18 |
근태기초설정 페이지 (0) | 2022.10.04 |
---|---|
공지/게시검색 페이지 (0) | 2022.05.27 |
최근게시물 페이지 (0) | 2022.05.26 |
명함관리 페이지 (0) | 2022.05.24 |
명함그룹관리 페이지 (0) | 2022.05.18 |
읽지 않은 게시물은 굵게 표시
공지/게시검색 페이지 (0) | 2022.05.27 |
---|---|
문서이동 페이지 (0) | 2022.05.26 |
명함관리 페이지 (0) | 2022.05.24 |
명함그룹관리 페이지 (0) | 2022.05.18 |
비상연락망 페이지 (0) | 2022.05.17 |
공용주소록에 있는 명함은 개인주소록 이동이 불가
중복체크를 통해 중복되는 명함은 이동이나 복사에서 제외된다.
<?php
use PhpOffice\PhpSpreadsheet\IOFactory;
use PhpOffice\PhpSpreadsheet\Spreadsheet;
require_once "../../lib/include.php";
require_once "../vendor/autoload.php";
// Create new Spreadsheet object
$spreadsheet = new Spreadsheet();
// Add header data
$sheet = $spreadsheet->getActiveSheet();
//폰트사이즈
$spreadsheet->getDefaultStyle()->getFont()->setSize(10);
// 헤더 폰트 굵게
$spreadsheet->getActiveSheet()->getStyle('A1:O1')->getFont()->setBold(true);
//헤더
//그룹명 이름 회사 부서 직책(급) 휴대폰 근무지 팩스 근무처 전화 전자 메일 주소 기타1 기타2 비고 우편번호 주소 상세주소
$sheet->setCellValue('A1', "그룹명");
$sheet->setCellValue('B1', "이름");
$sheet->setCellValue('C1', "회사");
$sheet->setCellValue('D1', "부서");
$sheet->setCellValue('E1', "직책(급)");
$sheet->setCellValue('F1', "휴대폰");
$sheet->setCellValue('G1', "근무지 팩스");
$sheet->setCellValue('H1', "근무처 전화");
$sheet->setCellValue('I1', "전자 메일 주소");
$sheet->setCellValue('J1', "기타1");
$sheet->setCellValue('K1', "기타2");
$sheet->setCellValue('L1', "비고");
$sheet->setCellValue('M1', "우편번호");
$sheet->setCellValue('N1', "주소");
$sheet->setCellValue('O1', "상세주소");
// 헤더 배경색 지정
$sheet->getStyle('A1:O1')->getFill()->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID)->getStartColor()->setARGB('DCDCDC');
// 표 그리기
$rowCnt--;
$sheet->getStyle('A1:O1')->getBorders()->getAllBorders()->setBorderStyle(\PhpOffice\PhpSpreadsheet\Style\Border::BORDER_THIN);
// 헤더 칼럼 가운데 정렬
$sheet->getStyle('A1:O1')->getAlignment()->setHorizontal(\PhpOffice\PhpSpreadsheet\Style\Alignment::HORIZONTAL_CENTER);
// 칼럼 사이즈 자동 조정
$sheet->getColumnDimension('A')->setWidth(15);
$sheet->getColumnDimension('B')->setWidth(15);
$sheet->getColumnDimension('C')->setWidth(15);
$sheet->getColumnDimension('D')->setWidth(15);
$sheet->getColumnDimension('E')->setWidth(15);
$sheet->getColumnDimension('F')->setWidth(15);
$sheet->getColumnDimension('G')->setWidth(15);
$sheet->getColumnDimension('H')->setWidth(15);
$sheet->getColumnDimension('I')->setWidth(15);
$sheet->getColumnDimension('J')->setWidth(15);
$sheet->getColumnDimension('K')->setWidth(15);
$sheet->getColumnDimension('L')->setWidth(15);
$sheet->getColumnDimension('M')->setWidth(15);
$sheet->getColumnDimension('N')->setWidth(15);
$sheet->getColumnDimension('O')->setWidth(15);
$title = "MAIL_ADDRESS";
// Rename worksheet
$sheet->setTitle($title);
// Redirect output to a client’s web browser (Excel2007)
@header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
//IE EDGE
if (isset($_SERVER['HTTP_USER_AGENT']) && (strpos($_SERVER['HTTP_USER_AGENT'], 'Edge') !== FALSE)) {
$title = rawurlencode($title);
@header('Content-Disposition: attachment;filename="' . $title . '.xlsx"');
@header('Cache-Control: private, no-transform, no-store, must-revalidate');
@header('Pragma: no-cache');
}
//IE
else if (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== FALSE || strpos($_SERVER['HTTP_USER_AGENT'], 'Trident') !== FALSE) {
$title = iconv("UTF-8","EUC-KR", $title);
@header('Content-Disposition: attachment;filename=' . $title . '.xlsx');
@header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
@header('Pragma: public'); // HTTP/1.0
}
else {
@header('Content-Disposition: attachment;filename="' . $title . '.xlsx"');
@header('Cache-Control: private, no-transform, no-store, must-revalidate');
@header('Pragma: no-cache');
}
@header('Cache-Control: max-age=0');
// If you're serving to IE 9, then the following may be needed
@header('Cache-Control: max-age=1');
$writer = IOFactory::createWriter($spreadsheet, 'Xlsx');
$writer->save('php://output');
exit;
?>
조건을 충족하지 않은 데이터들을 필터링한다.
해당화면에 보여지는 데이터 엑셀 다운받기
문서이동 페이지 (0) | 2022.05.26 |
---|---|
최근게시물 페이지 (0) | 2022.05.26 |
명함그룹관리 페이지 (0) | 2022.05.18 |
비상연락망 페이지 (0) | 2022.05.17 |
개인정보 수정 페이지 (0) | 2022.05.17 |
그룹안에 명함이 하나라도 있을경우 삭제되지 않는다.
명함을 보여줄 부서 및 사용자를 선택할 수 있다.
최근게시물 페이지 (0) | 2022.05.26 |
---|---|
명함관리 페이지 (0) | 2022.05.24 |
비상연락망 페이지 (0) | 2022.05.17 |
개인정보 수정 페이지 (0) | 2022.05.17 |
통합검색 페이지 (0) | 2022.05.16 |