Error #0 "Class 'Object' not found" in modules/pointhistory/pointhistory.controller.php on line 35
Object → BaseObject 변환이 필요한 서드파티 자료가 있습니다. 위의 에러 메시지에 포함된 파일명과 줄 번호를 참고하여 수정하세요.
modules/pointhistory/pointhistory.controller.php:35

 

 

Object를 BaseObject로 변경했는데도 계속 오류가 뜹니다.

혹시 해결하신 분 계신가요? 다른 서드파티 자료들은 문제가 다 해결됐는데 포인트 히스토리만 이러네요... 

문제 해결방법, 모듈 파일 공유해주실 분 계실까요. ㅠㅜ

 

 

 

<?php
/**
 * @class  pointhistoryController
     * @author CONORY (https://xe.conory.com)
 * @brief Controller class of pointhistory modules
 */
class pointhistoryController extends pointhistory
{
/**
 * @brief Initialization
 */
function init()
{
}

  /**
 *@brief Module Handler Ʈ����
 **/
        function triggerModuleHandler(&$obj)
{
            if($this->isUpgrade())
{
return new BaseObject();
}

// ����Ʈ ��Ȳ ������Ʈ
$this->updatePointStatus();

// ȸ�� �޴��� ����Ʈ ���� �߰�
if(Context::get('is_logged') && $this->config->add_member_menu == 'Y')
{
getController('member')->addMemberMenu('dispPointhistoryList', $this->config->member_menu_name);
}

            return new BaseObject();
        }

  /**
 *@brief ����Ʈ ���� Ʈ��Ŀ
 **/
        function triggerSetPoint(&$obj)
{
// ������ ������ return
if($obj->current_point == $obj->set_point || $this->isUpgrade())
{
return new BaseObject();
}

$args = new stdClass;
$args->member_srl = $obj->member_srl;
$args->point = $obj->set_point - $obj->current_point;
$args->type = ($args->point < 0) ? 1 : 2;
$args->act = Context::get('act');
$args->module_srl = Context::get('current_module_info')->module_srl;

// ����Ʈ �޼��� ��������
getModel('pointhistory')->getPointMessage($args);

// ����Ʈ ���
executeQuery('pointhistory.insertPointhistoryLog', $args);

// ȸ�� ����Ʈ ��Ȳ ������Ʈ
$this->updatePointStatus($obj->member_srl, $args->point);

return new BaseObject();
        }

  /**
 *@brief ȸ������ Ʈ����
 **/
        function triggerDeleteMember($obj)
{
$this->recompileCache();

if(!$obj->member_srl || $this->config->delete_record_leave == 'N' || $this->isUpgrade())
{
return new BaseObject();
}

$args = new stdClass;
$args->member_srl = $obj->member_srl;

// ȸ�� �����丮 ����
            executeQuery('pointhistory.deletePointhistoryLog', $args);

// ȸ�� ��Ȳ ����
            executeQuery('pointhistory.deletePointhistoryMemberStatus', $args);

return new BaseObject();
}

  /**
 *@brief ����Ʈ ��Ȳ ������Ʈ
 **/
        function updatePointStatus($member_srl = 0, $point = 0)
{
// ����Ʈ ��Ȳ ������
if($this->config->point_status == 'N')
{
return;
}

// ���� ��¥�� ���ٸ� �߰�
if(!getModel('pointhistory')->isInsertedTodayStatus($member_srl))
{
$this->insertTodayStatus($member_srl);
}

if(!$member_srl || !$point)
{
return;
}

// �����ڴ� ����
if($this->config->status_except_admin == 'Y' && getModel('member')->getMemberInfoByMemberSrl($member_srl)->is_admin == 'Y')
{
return;
}

$args = new stdClass;
$args->member_srl = $member_srl;
$args->day = getModel('pointhistory')->getToday();

// ȸ�� ��Ȳ ������Ʈ
$args->point = executeQuery('pointhistory.getTodayMemberStatus', $args)->data->point + $point;
executeQuery('pointhistory.updateTodayMemberStatus', $args);

// ���� ��Ȳ ������Ʈ
$args->point = executeQuery('pointhistory.getTodayStatus', $args)->data->point + $point;
executeQuery('pointhistory.updateTodayStatus', $args);

// �� ��Ȳ ������Ʈ
$args = new stdClass;
$args->point = executeQuery('pointhistory.getTodayStatus')->data->point + $point;
executeQuery('pointhistory.updateTodayStatus', $args);
        }

  /**
 *@brief ���� ��¥ �߰�
 **/
function insertTodayStatus($member_srl = 0)
{
// �ߺ� ���� ������ ���� ��
if(!$member_srl)
{
$lockfile = 'files/cache/pointhistory/insertTodayStatus.lock';

if(file_exists($lockfile))
{
return;
}

FileHandler::writeFile($lockfile, '', 'w');
}
// �����ڴ� ����
else if($this->config->status_except_admin == 'Y' && getModel('member')->getMemberInfoByMemberSrl($member_srl)->is_admin == 'Y')
{
return;
}

$args = new stdClass;
$args->day = getModel('pointhistory')->getToday();

if($member_srl)
{
$args->member_srl = $member_srl;
$query_id = 'pointhistory.insertTodayMemberStatus';
}
else
{
$query_id = 'pointhistory.insertTodayStatus';

// day=0 �� ����Ʈ
if(!executeQuery('pointhistory.getTodayStatus')->data->count)
{
$args2 = new stdClass;

// ������ ����Ʈ�� ����
if($this->config->status_except_admin == 'Y')
{
$args2->is_admin = 'N';
}

$args2->point = executeQuery('pointhistory.getPointAll', $args2)->data->point_all;
executeQuery($query_id, $args2);
}
}

executeQuery($query_id, $args);

// �� ���� ����
if(!$member_srl)
{
FileHandler::removeFile($lockfile);
}
}
}

 

  • profile

    BaseObject 처리한 해당 파일 공유해봅니다.

    Atachment
    첨부
  • profile profile

    Error #0 "Class 'Object' not found" in modules/pointhistory/pointhistory.controller.php on line 35
    Object → BaseObject 변환이 필요한 서드파티 자료가 있습니다. 위의 에러 메시지에 포함된 파일명과 줄 번호를 참고하여 수정하세요.
    modules/pointhistory/pointhistory.controller.php:35

     

    스크린샷 2024-03-18 142327.png





    덮어써도 동일하네요.... 귀신이 곡할 노릇입니다...허허....

  • profile

    혹시 다른 폴더에 백업해둔 파일을 수정하고 계시거나, 수정한 파일이 서버에 업로드되지 않고 있거나, 업로드된 파일을 서버에서 인식하지 못하는 것이 아닐까요?

  • profile profile

    원인을 찾았습니다. service php7.4-fpm restart 명령어를 하니 위 문구가 사라지네요

    제가 php.ini 설정 값 문제인것 같습니다...

  • profile profile

    그렇다면 업로드된 파일을 서버에서 인식하지 못하는 상황에 해당되죠. opcache 설정을 너무 과격하게 해두셔서 파일이 수정되어도 예전 파일 캐시된 것을 그대로 사용하도록 되어 있을 수도 있습니다. 성능이 크게 개선되는 것도 아니면서 오류만 유발하는 이상한 설정인데...

  • profile profile

    opcache.validate_timestamps=1

    0이였던 값을 1로 바꿔놨습니다.

    언제 기회가 되면 (회원수가 늘어나면) 기진님께 전반적인 웹서버 셋팅을 비용을 드리고 자문을 구하겠습니다.