그누보드 알림 5.5버전 플러그인 오류 질문
본문
이거 참고로 설치해서 진행해보려고하는데
관리자페이지 > 알림설정에서 우측 상단에 확인 버튼이 안뜹니다!
그리고 해당 알림설정페이지에서 콘솔에
[1번오류]
noti_config.php:120 Uncaught ReferenceError: jQuery is not defined
at noti_config.php:120:5이 오류 이해하기AI
noti_config.php:1
[2번오류]
Failed to load resource: the server responded with a status of 500 (Internal Server Error)
이렇게 뜨고있어요 도움좀 ㅠㅠ부탁드립니다
답변 3
[1번오류] jQuery 오류 해결:
"jQuery is not defined" 오류는 jQuery 라이브러리가 제대로 로드되지 않은 문제입니다. HTML 소스에 <script> 태그를 추가하여 jQuery를 포함해야 합니다.
예를 들어, <script src="path/to/jquery.min.js"></script>을 noti_config.php에 추가하거나,
필요한 JavaScript 파일 로드 순서를 확인합니다.
[2번오류] 500 서버 오류 해결:
500 Internal Server Error는 PHP 코드 문제, 데이터베이스 설정 오류,
또는 권한 문제 등으로 인해 발생할 수 있습니다.
noti_config.php 파일의 PHP 코드에서 오류가 있는지 확인하고, 디버깅해야 합니다.
디렉토리 구조와 코드에 맞게 아래를 참고하여 배치/수정하여 보세요.
우선, "PHP 500 오류 디버깅 코드"를 실행하여 보세요.
// noti_config.php
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1); // PHP 에러 표시 활성화
include_once('../common.php'); // 경로 확인
include_once(G5_ADMIN_PATH.'/admin.lib.php');
// 데이터베이스 쿼리 확인
$result = sql_query("SELECT * FROM noti_table WHERE 1=1");
if (!$result) {
die('Database query failed: ' . sql_error());
}
?>
디버깅이 끝난 후,
error_reporting(0);
ini_set('display_errors', 0);
error_reporting과 ini_set을 비활성화하거나 주석 처리하여,
프로덕션 환경에서는 보안을 강화하시기 바랍니다.
Project Structure (수정 예시)
/adm
├── css
│ ├── admin.css
├── js
│ ├── admin.js
│ ├── noti_config.js <-- 새로운 jQuery 관련 수정 코드 포함
├── noti_config.php <-- PHP 오류 디버깅
├── admin.menu100.php
jQuery 추가 (noti_config.php)
<!-- noti_config.php -->
<script src="/js/jquery-1.12.4.min.js"></script> <!-- jQuery 로드 -->
<script src="/js/noti_config.js"></script> <!-- 알림 설정용 스크립트 -->
jQuery 코드 수정 (noti_config.js)
$(document).ready(function () {
$('#submit_button').click(function () {
alert('설정이 저장되었습니다.');
});
});
*최신 jQuery 버전을 사용하려면 CDN 링크를 활용할 수 있습니다.
개선과 보안 패치가 적용되어 있으므로 권장됩니다.
jQuery가 다른 JavaScript 파일보다 먼저 로드되어야 한다는 점을 꼭 염두에 두세요.
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
*데이터베이스 연결 문제 등 주요 원인을 탐지하려면 다음을 확인하세요:
- G5_ADMIN_PATH 경로가 올바른지 확인.
- PHP 오류 로그 파일에서 세부 정보를 확인.
-- error_log 또는 서버 설정에 따라 지정된 로그 파일.
*JavaScript 작업 시 #submit_button ID가 실제 HTML에 존재하는지 확인.
*만약, 최종적으로도 버튼 스타일이나 UI 요소가 정상적으로 표시되지 않는 경우
- HTML `<head>`에서 CSS 경로를 확인하고
브라우저 개발자 도구(Network 탭)로 파일 로드 상태를 점검.
- 파일이 없거나 경로가 잘못되었다면 올바른 위치로 배치.
- 브라우저 캐시 문제를 방지하려면 `<link>` 태그에 쿼리스트링을 추가.
- CSS 문법 오류와 브라우저 호환성 문제를 점검하고, 우선순위 문제를 확인.
- "전문인과의 협업"을 권장합니다.
!-->!-->!-->!-->에러가 뜬 페이지 URL 공개 후 도움을 구해보세요.
플러그인 설치해보고 답변 달아주실 분이 계실지.....
작업가이드만 해드릴게요. 직접 해보시기 바랍니다.
- 알림 플러그인 작업 환경의 그누 원본과 비교해 플러그인 상의 파일이 (추가/수정)된 파일인지 여부를 먼저 확인.
- 수정된 파일인 경우, 윈머지 같은 파일 비교 프로그램 이용해 플러그인 제작 환경 상의 그누 원본과 현재 님이 사용 중인 그누 원본과의 파일 소스 비교해서 업데이트 반영.
- 그런 다음에 (서버측/브라우저측) 에러 각각 점검. (위 500 에러부터 먼저 해결해야 브라우저측 에러 점검도 가능할 듯 함. 500 에러는 서버측 문법 에러임. PHP 문법 오류일 수도 있고, .htaccess 코드 상이 오류일 수도 있고 ...다양함.)
의뢰로 해결할 사안으로 보인다는 말을 아주 길게 해봤습니다.
PS. 500 에러 해결하면 아마 브라우저측 에러도 자연스레 해결되지 않을까 싶네요. 500 문제로 인해서 jquery 정의된 head.sub.php 파일을 제대로 못 불러오는 듯 하니.....
<?php 이렇게 바꿔줘보세요 그리고 제이쿼리가 로드 되지않고있습니다. 5번을 체크을해보면 관리자 접근 이 올바르게설정되어잇는 지 확인해보시구요