2017-11-01 5 views
0

Revive 4.1.1의 캠페인에 html5 배너를 추가하고 '변경 사항 저장'을 클릭하면 관리자에게 빈 페이지가 표시됩니다. Apache 오류 로그에는 다음 내용이 포함되어 있습니다.Revive 4.1.1에서 html5 배너를 추가하면 PHP에서 치명적인 오류가 발생합니다. Plugin_BannerTypeHTML_delivery_adRender

PHP Fatal error: Cannot redeclare Plugin_BannerTypeHTML_delivery_adRender() (previously declared in /home/applinet/local/ads/www/lib/OX/Extension/bannerTypeHtml/bannerTypeHtmlDelivery.php:31) in /home/applinet/local/ads/www/lib/OX/Extension/bannerTypeHtml/bannerTypeHtmlDelivery.php on line 31

무엇이 문제의 원인일까요?

Debian 9.2 Linux에서 PHP 7.0과 MySQL 5.5를 사용하여 Revive 4.1.1 (이전 버전 4.0과 OpenX에서 업그레이드 됨)을 사용하고 있습니다.

+0

동일한 파일을 두 번 포함하거나 필요합니까? 만약 그렇다면'include_once' 나'require_once' _ (참고 : 사용하고있는 것에 대해서는 전혀 모른다. 단지 PHP 만) _를 사용하고 싶을 것이다. – FirstOne

답변

0

함수를 다시 선언하고 제거 할 위치를 찾아야한다고 말하고 싶습니다. 그러나 ....

더티 픽스는 이와 비슷합니다. Plugin_BannerTypeHTML_delivery_adRender() 함수가 선언되고있는 위치를 찾습니다 (그 모양으로 bannerTypeHtmlDelivery.php에 있음)

다음 코드를 추가하십시오.

if (!function_exists('Plugin_BannerTypeHTML_delivery_adRender')) { 
    // the funtion doesnt already exists so declare it here 
function Plugin_BannerTypeHTML_delivery_adRender(){ 
//all the function stuff here. 
} 
} 

.... 명확히하기 위해 if 블록에 기존 함수를 래핑하십시오.

나는 그것이 더러운 수정이라고 말했다.