CI 묻고 답하기

제목 [재질문] admin 로그인이 안되고 있습니다.
글쓴이 보다 작성시각 2015/05/15 06:48:35
댓글 : 6 추천 : 0 스크랩 : 0 조회수 : 14259   RSS
밤새 질문게시판과 코드이그나이터 관련 자료들을 찾아보다가 결국 답을 얻지 못하고 질문을 다시 올려봅니다.

phpMyAdmi에서 password를 ENCRYPT, MD5, OLD_PASSWORD, PASSWORD 등 다양한 함수로 바꿔 보았으나, 모두 "비밀번호를 잘못 입력하였습니다."라는 메시지만 나오고 있는 상황입니다.

암호화 방식과 세션의 문제일 것 같다는 추측과, 그저 아래의 코드에 힌트가 있지 않을까하는 느낌 정도만이 지금까지의 결론이랍니다...
 
저는 원인을 못찾고 있으나, 도움을 주실 수 있는 분이 계시리라 희망해보며 다시 부탁드립니다.
감사합니다.


1) 경로: /application/controllers/admin/login.php

<?php
class Login extends CI_Controller{

    function  __construct()
    {
        parent::__construct();
        
        $this->load->helper('url');
        $this->load->library('session');
        $this->load->model('admin', '', TRUE);
        $this->load->library('encrypt'); // 암호화
        $this->load->library('form_validation');

...중략...

if ($this->form_validation->run())
{    
     $mem_data = $this->admin->getDataOfID($data['userid']);
    if ($mem_data->id!='') // 회원이 존재 하면
    {
          $pass = $this->encrypt->decode($mem_data->password);

            if($pass==$data['password'] ){
             $sessiondata = array(
            'logined'        => true,
            'userid'        => $mem_data->id,
            'last_action'        => mktime()
                            
        );
        $this->session->set_userdata($sessiondata);
        redirect('/admin/applicant/');
    }else{
            $data['error'] = "비밀번호를 잘못 입력하였습니다.";
            $this->load->view('/admin/login', $data);  
    }
    }
    else

...하략...



2) 경로: /system/libraries/Encrypt.php

<?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class CI_Encrypt {

    var $CI;
    var $encryption_key    = '';
    var $_hash_type    = 'sha1';
    var $_mcrypt_exists = FALSE;
    var $_mcrypt_cipher;
    var $_mcrypt_mode;

...하략...
 다음글 로그 관련해서 질문있습니다~ (5)
 이전글 여러환경 처리 관련해서 질문있습니다 (5)

댓글

한대승(불의회상) / 2015/05/15 10:02:27 / 추천 0
관리자 비밀번호를 바꿔서 로그인 하는게 목적이라면
echo $this->encrypt->encode('mypassword');
로 출력되는 값을 복사 해서 DB의 password 컬럼을 업데이트 하면 간단히 해결 됩니다.
보다 / 2015/05/15 12:30:58 / 추천 0
한대승(불의회상) 님//

답변 감사합니다.

그런데 출력값이 새로고침을 할 때마다 바뀌고, 출력값을 복사해서 password 컬럼에 넣는다해도 실제 로그인창에서 입력할 password는 확인이 안되는데 어떻게 해야할까요...?
한대승(불의회상) / 2015/05/15 12:40:05 / 추천 0
출력 값은 바껴도 입력값은 같지 않나요?
보다 / 2015/05/15 12:44:14 / 추천 0
죄송합니다만, 말씀하시는 입력값이 어떤 걸 의미하는 것일까요...?
한대승(불의회상) / 2015/05/15 12:46:20 / 추천 0
mypassword
보다 / 2015/05/15 12:55:25 / 추천 0
한대승(불의회상) 님//

아, 이제야 무슨 말씀인지 이해했습니다.
덕분에 4일동안 헤메다가 드디어 로그인을 했습니다....

정말 감사드립니다~~!!!!