안녕하세요.
오늘도 고생하십니다.
질문이 있어서 글을 작성하게 되었습니다.
현재 그누보드 5.5.7 버전을 사용하고 있는 홈페이지에서"만"
db sql 1118 오류가 생겨 지난번에 질문을 남겼으나
sir에서도 카페24에서도 답을 찾이 못해 해결하지 못했었습니다.
그런데 그 버전에서 팝업레이어를 등록하고 저장을 하게 되면
db에 저장도 잘 되는데 팝업 시작/종료 일자만 저장을 할 수 없습니다.
2022-08-26 23:59:59 이런 식으로 작성하거나 우측 체크 박스를 체크하고 저장하면
0000-00-00 00:00:00 이렇게 저장이되고
2022-08-26 으로만 작성을 하게 되면
2022-08-26 00:00:00 으로 저장이 되더라구요..
혹시나 해서 가장 최신 버전의 adm 폴더를 덮어 씌우기도 했는데
토큰 에러가 뜨거나 저장이 안되거나 둘 중 하나입니다.
혹시 같은 현상을 겪으신 분이나
왜 이런 현상이 나타나는지 아시는 분이 계실까요..?
답변 4개 / 댓글 5개
안녕하세요.
그누보드 5.5.7버전에서 newinfoformupdate.php 코드 중
clean_xss_tags를 사용하면서 $_POST값의 공백도 같이 제거되는 오류가 있는걸로 확인됩니다.
foreach ($check_keys as $key => $val) {
if ($val === 'int') {
$posts[$key] = isset($_POST[$key]) ? (int) $_POST[$key] : 0;
} elseif ($val === 'str') {
$posts[$key] = isset($_POST[$key]) ? clean_xss_tags($_POST[$key], 1, 1) : 0;
} else {
$posts[$key] = isset($_POST[$key]) ? trim($_POST[$key]) : 0;
}
}
// nw_begin_time 값 변화
// 2022-08-26 00:00:00 => 2022-08-2600:00:00
// datetime 형식에 맞지않아 데이터가 정상적으로 입력되지 않음
최신버전으로 업데이트 하시기를 권하며,
업데이트가 어렵다면 common.lib.php 파일이나 clean_xss_tags 함수만이라도 최신버전으로 업데이트 하시기 바랍니다.
답변에 대한 댓글 2개
아직까지 정확한 오류 원인 및 해결방법이 밝혀지지 않은 것 같습니다. https://sir.kr/qa/468386
여기 답변들을 통해서도 문제가 남아있다면
제작의뢰를 검토해 보는 것이 좋을 듯 싶습니다. https://sir.kr/request
답변에 대한 댓글 1개
값이 잘 넘어가는지
db저장전에 확인해봐야 알것 같네요
화면상에서는 전달이 되는것 싵을수 있으나
실제 폼전송시에 누락되는것 같아보이네요
답변에 대한 댓글 1개
일단 버전은 상관없고
2022-08-26 23:59:59 이런 식으로 작성하거나 우측 체크 박스를 체크하고 저장하면
0000-00-00 00:00:00 이렇게 저장이되고 <-
저장될때 시간 가져오는 변수 update 되는곳에서 저 변수 찍어보고 확인해보셔야될꺼같고
2022-08-26 으로만 작성을 하게 되면 2022-08-26 00:00:00 으로 저장이 되더라구요.. <-이건
날짜만 들어왔으면 날짜만 저장되는건 당연한거같습니다만
답변에 대한 댓글 1개
답변을 작성하려면 로그인이 필요합니다.
clean_xss_tags 함수를 최신 버전으로 변경했더니 제대로 저장이 됩니다!
감사합니다!