2014-02-20 3 views
0

나는 나의의 Joomla 웹 사이트에 티켓 모듈을 설치, 나는 티켓을줌라 구성 요소 오류 - 치명적인 오류

치명적인 오류가 제출 된 다음과 같은 오류 얻을 :()에서 정의되지 않은 메서드 JRegistry ::의 getValue 전화/집 누군가가 나를 도울 수 있다면 /xboxfifa/public_html/HD/components/com_jtaghelpdesk/controller.php 라인 (300)

function mailme($formData){ 
$version = new JVersion(); 
    $body = "A new inquiry has been recieved: <br /> Name : ". $formData['inqName']. "<br /> Email ID : ". $formData['inqEmail']. "<br/> Message : ".$formData['inqMessage'] ; 
    $mailer =& JFactory::getMailer(); 
    $config =& JFactory::getConfig(); 
if($version->RELEASE==3.0) 
{ 
    $recipient = array( 
    $config->get('mailfrom'), 
    $config->get('fromname')); 
}else 
{ 
    $recipient = array( 
    $config->getValue('config.mailfrom'), 
    $config->getValue('config.fromname')); 
} 
    $mailer->addRecipient($recipient); 
    $subject=$formData['inqSubject']; 
    $mailer->setSubject($subject); 
    $mailer->isHTML(true); 
    $mailer->Encoding = 'base64'; 
    $mailer->setBody($body); 
    $send =& $mailer->Send(); 

    if ($send !==true) 
    {  $msg = 'Reply not Sent!'; 

    } else 
    { 
     $msg = 'Reply Sent Successfully!'; 

    } 

    } 

에 나는 그것을 감사하겠습니다.

+0

: 버전에 대해서는

은 당신이 사용한다, 비교? – Lodder

+0

3.2.1을 사용 중입니다. – user3174792

답변

1

문제가 뭔가 다른 것을 깨닫기 때문에이 답변을 수정하십시오. 여기서 문제는 $ version이 당신이하고있는 버전이 정확히 == 3.0이 될것인지를 확인하는 것입니다. 정말로 get() 메서드를 3.0 이상에서 사용하고자 할 때. if 문을 다음과 같이 변경해야합니다.

if($version->RELEASE >= 3.0) 
{ ... } 

3.2.1을 사용 중이므로 해당 버전에 맞는 메소드가 사용됩니다.

3

JRegistry::getvalue()은 Joomla 3.x에서 제거되었으므로 대신 JRegistry::get()을 사용하십시오. 사용중인 Joonla 어떤 버전의

if (version_compare(JVERSION, '3.0.0', 'ge')){ 
    // code here 
}