2011-09-15 3 views
0
 <?php if($this->item->params->get('itemExtraFields') && count($this->item->extra_fields)): ?> 
     <!-- Item extra fields --> 
     <div class="itemExtraFields"> 
      <h3><?php echo JText::_('Additional Info'); ?></h3> 
      <ul> 
      <?php foreach ($this->item->extra_fields as $key=>$extraField):?> 


<?php $user =& JFactory::getUser(); ?> 
<strong><?php if($extraField->name == "Price" && $user->get('guest') ==1) { ?></strong> 


<?php else: ?> 
       <li class="<?php echo ($key%2) ? "odd" : "even"; ?> type<?php echo ucfirst($extraField->type); ?> group<?php echo $extraField->group; ?>"> 
        <span class="itemExtraFieldsLabel"><?php echo $extraField->name; ?>:</span> 
        <span class="itemExtraFieldsValue"><?php echo ($extraField->type=='date')?JHTML::_('date', $extraField->value, JText::_('K2_DATE_FORMAT_LC')):$extraField->value; ?></span> 
       </li> 
       <?php endif; ?> 
      <?php endforeach; ?> 
      </ul> 
     <div class="clr"></div> 
     </div> 
     <?php endif; ?> 

Ce qui semble être le problème ici? Il renvoie une erreur de Erreur d'analyse: erreur de syntaxe, T_ELSE inattendu dans.Else syntaxe Erreur de retour

Ceci est pour K2 Extrafield Visibilité

+0

D'accord. Merci. Mais quelqu'un peut me le signaler. Je suis tout nouveau à PHP et manque de sommeil déjà. =} – posneg

Répondre

2

Vous mélangez les if() : et if() { syntaxes. Il y en a un if() { autour du milieu lorsque tout le reste utilise :.

Astuce de débogage: L'erreur est très souvent dans une ligne avant la ligne vers laquelle pointe le message d'erreur.

0

Vous mélangez différentes manières d'utiliser les instructions if-else. Au milieu de ce code, vous ouvrez une instruction if avec un {, puis utilisez else :. Vous aussi ne fermez jamais ça si.

0

Modifier ce -

<?php if($extraField->name == "Price" && $user->get('guest') ==1) { ?> 

à cette -

<?php if($extraField->name == "Price" && $user->get('guest') ==1): ?>