2013-06-05 3 views
4

PHP에서 오류보고를 비활성화 할 수 없습니다. "Notice"오류가 계속 표시되지만 모든 것을 시도했습니다.OpenCart (PHP)에서 오류보고를 비활성화 할 수 없습니다.

내 php.ini 파일이 있습니다 내 htaccess로는

php_value error_reporting 0 

그리고 내 스크립트가

ini_set('display_errors', 'Off'); 
ini_set('log_errors', 1); 
ini_set('error_reporting', 0); 
ini_set('display_startup_errors', 'Off'); 

php_info(); 

echo $my_undefined_var; 

php_info이있다()가 출력 display_errors를하고 error_reporting은 실제로있는 것을 확인했다

display_errors = Off; 
error_reporting = 0; 

꺼짐과 0, 아직 알림을받습니다.

공지 사항 : 정의되지 않은 변수 : /my/site/path/index.php?blahblah에서 my_undefined_var ...이

참고는 OpenCart 웹 사이트 (그리고 내 변화는 관리 섹션에있다). index.php와 같은 디렉토리에 테스트 PHP 스크립트를 만들려고했지만 괜찮습니다.

error_reporting(0)을 재정의 할 수있는 다른 것이 있습니까?

나는 전체 사이트에서 grep을 수행하여 error_reporting 및 display_errors에 대한 모든 언급을 찾아서 비활성화하지만 아무런 효과가 없습니다.

+0

log_errors를 1로 설정하면 어떤 점이 있습니까? 무엇을 기록하고 싶습니까? –

+0

그 외에도 타이틀은 나를 자연스럽게 떨리게 만든다. –

+0

정말 아무것도 기록하고 싶지 않습니다 ... 오류 표시를 사용하지 않도록 설정하는 다른 포럼에서 오류 로깅을 활성화해야합니다. - 나에게 의미가 없지만 시도 할 부분에 있습니다. 아무것도. 하지만 그것을 꺼내더라도 아무런 차이가 없습니다. – colmde

답변

22

OpenCart 대시 보드에는 오류보고 및 로깅을 설정하거나 해제 할 수있는 설정이 있습니다. 메뉴에서 대시 보드

    1. 로그, "서버를 클릭"시스템 "으로 이동하여 저장 목록에서"설정 "
    2. 을 선택, 상점
    3. 에 대한"편집 "을 클릭 " 탭.
    4. 아래로 스크롤하면 두 설정, 즉
      가 표시됩니다.로그 오류 - 원하는대로 설정하십시오.
      b. 오류 표시 - 이것을 "아니오"로 설정하십시오.
  • 8

    OpenCart는 error_reporting(0)을 덮어 쓰게하는 set_error_handler() 기능을 사용합니다.

    내 문제가 해결되었습니다. @colmde 이미 OpenCart 사용자 정의 error_handler을 사용하여 지적

    3

    당신은 단순히 시스템의

    ini_set('display_errors', 0); 
    

    /startup.php

    +0

    나는 반대를하고 싶다. : 오류보고를 켜고 싶다. (이것은 꽤 어렵다. 그러나 이것은 작동한다!) – Martijn

    11

    를 사용할 수 있습니다.

    당신은을 통해 코드 편집 (특히 OpenCart 코어 파일)없이 전원 표시 오류를 설정할 수 있습니다 :

    Admin->System->Settings->[edit your configured store]->Server->Display Errors

    당신은 OpenCart 데이터베이스에 대해 다음 쿼리를 실행하여 동일한 작업을 수행 할 수 [편집]가 :

    update setting set `value`= 1 where `key` = 'config_error_display' 
    
    +0

    그것은 나를 위해 일했다. 감사합니다. Bro : –

    +1

    나를 위해 일했다 : 'UPDATE 'TABLENAME'. ' oc_setting 'SET'value '='0 'WHERE'oc_setting '.'setting_id '= 1057;' –

    +0

    설정이 완료되면 OpenCart 테이블에 'oc_'접두사를 사용하도록 선택했기 때문에 '설정'이 켜져 있습니다. 'oc_setting'으로 변환합니다. – zergussino

    0

    OpenCart에서 진정한 방법입니다.

    $this->config->set('config_error_display', 0); 
    $this->processAction(); // it throws ugly warning 
    

    나는 컨트롤러 내 모듈의에서 테스트했습니다. 코드 바로 앞에 오류 표시를 해제하십시오. 현재 세션 (현재 페이지까지)에만 영향을줍니다. DB에 영향을주지 않습니다!