fix(mysql8): MySQL 8.0 Strict Mode DATE 필드 호환성 수정

MySQL 8.0의 Strict Mode에서 DATE 컬럼에 빈 문자열('')을 허용하지 않는
문제를 해결하기 위해 여러 파일 수정

📁 수정된 파일:
- output/_request.php: DATE 필드 빈 문자열을 NULL로 변환
- output/insert_iList.php: ACIaskDate, ACIdoneDate NULL 처리
- output/_row.php: eList_screen, eList_slat 변수 추가
- output/list_document.php: DATE 비교 조건에서 != '' 제거
- output/list_document_except.php: DATE 비교 조건에서 != '' 제거
- output/list_QCsales.php: ACIdoneDate != '' 조건 제거
- account_juil/list_daily.php: dueDate != '' 조건 제거

🐛 해결된 오류:
- SQLSTATE[HY000]: General error: 1525 Incorrect DATE value: ''
- Internal Server Error (undefined variables)

🔧 변경 내용:
- 날짜 필드 입력 시 빈 문자열 → NULL 변환
- SQL WHERE 절에서 DATE != '' 비교 → IS NOT NULL 비교로 변경
- MySQL 8.0 STRICT_TRANS_TABLES, NO_ZERO_DATE 모드 호환

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2025-12-13 13:18:23 +09:00
parent b1128bedb5
commit 0716754bf5
7 changed files with 28 additions and 24 deletions

View File

@@ -64,9 +64,10 @@ $warranty = isset($_REQUEST['warranty']) ? $_REQUEST['warranty'] : '';
$ordersheet = isset($_REQUEST['ordersheet']) ? $_REQUEST['ordersheet'] : '{}';
$ordersheet_slat = isset($_REQUEST['ordersheet_slat']) ? $_REQUEST['ordersheet_slat'] : '{}';
$ACIregDate = isset($_REQUEST["ACIregDate"]) ? $_REQUEST["ACIregDate"] : ''; // 인정검사 관련 4가지
$ACIaskDate = isset($_REQUEST["ACIaskDate"]) ? $_REQUEST["ACIaskDate"] : '';
$ACIdoneDate = isset($_REQUEST["ACIdoneDate"]) ? $_REQUEST["ACIdoneDate"] : '';
// 인정검사 관련 날짜 필드 - 빈 문자열은 NULL로 처리 (MySQL 8.0 Strict Mode 호환)
$ACIregDate = isset($_REQUEST["ACIregDate"]) && $_REQUEST["ACIregDate"] !== '' ? $_REQUEST["ACIregDate"] : null;
$ACIaskDate = isset($_REQUEST["ACIaskDate"]) && $_REQUEST["ACIaskDate"] !== '' ? $_REQUEST["ACIaskDate"] : null;
$ACIdoneDate = isset($_REQUEST["ACIdoneDate"]) && $_REQUEST["ACIdoneDate"] !== '' ? $_REQUEST["ACIdoneDate"] : null;
$ACImemo = isset($_REQUEST["ACImemo"]) ? $_REQUEST["ACImemo"] : '';
$iList = isset($_REQUEST['iList']) ? $_REQUEST['iList'] : '{}'; // 인정검사 자료