DB에서 관리자까지 지워버렸네요.ㅠㅠ
본문
DB에서 회원관리 스팸으로 수천개가 가입이 되어 지우다가 관리자까지 다 지웠네요.
회원DB에 아무것도 없는 상황인데
도메인/adm
접속하려니 기존 아이디 패스워드 전부 먹통이네요.
홈페이지/adm 접속하려면 어찌 해야할까요?
답변 7
1. ca.php 파일 생성
<?php
include_once('./_common.php');
$mb_id = 'admin';
$mb_password = 'admin1234';
$mb_name = '관리자';
$mb_nick = '관리자';
$mb_email = 'admin @ example.com';
$mb_password_encrypted = get_encrypt_string($mb_password);
$sql = "INSERT INTO {$g5['member_table']} SET
mb_id = '{$mb_id}',
mb_password = '{$mb_password_encrypted}',
mb_name = '{$mb_name}',
mb_nick = '{$mb_nick}',
mb_email = '{$mb_email}',
mb_level = 10,
mb_datetime = NOW(),
mb_ip = '{$_SERVER['REMOTE_ADDR']}'";
$result = sql_query($sql, false);
if ($result) {
echo "관리자 계정 생성 완료!<br>";
echo "아이디: {$mb_id}<br>";
echo "비밀번호: {$mb_password}<br><br>";
echo "<strong style='color:red;'>지금 즉시 이 파일을 삭제하세요!</strong>";
} else {
echo "생성 실패: 이미 존재하거나 DB 오류";
}
2. ~/ca.php 접속
3. 로그인 가능해지면 ca.php 파일 삭제
4. 관리자 정보 변경에서 비밀번호 변경
!-->다른 서버나 로컬 PC (XAMPP 등 사용) 에 동일한 그누보드를 설치하셔서 PHPMyAdmin 으로 admin / 비번을 복사해서 관리하시는 서버에 입력을 하셔서 해결을 한번 해보시기 바랍니다.
/install 디렉토리에 보시면
install_db.php파일이 있습니다.
해당 파일을 열고
검색을
{$table_prefix}member
로 검색을 하셔서
// 관리자 회원가입
$sql = " insert into `{$table_prefix}member`
에서 " 로 끝나는 부분까지중에
PHP변수부분만 실제 내용으로 치환해서
db상에서 SQL로 관리자를 생성하세요
관리자 회원 DB를 다시 생성해서 처리를 하셔야 하는 부분입니다.
최근 회원디비 또는 전체 백업해둔게 잇으시면 해당부분만 스키마 쿼리 날리세요
그냥 간단하게 회원가입하나 하시고 (test 로 가정)
extend 폴더에 admin_test.php 파일 하나 만드시고
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
// 최고관리자 (회원id 지정)
if ($member['mb_id'] == 'test') $is_admin = 'test';
이렇게 하시면 test 아이디가 최고관리자 권한을 얻게 됩니다.
기존 관리자가 admin 가정 시,
1. admin2 아이디로 회원가입
2. phpmyadmin 접속 후 g5_member 테이블에서 admin2 아이디를 admin으로 수정 / 레벨은 10레벨로 수정.