Adsmanager вывод заданных значений в массиве если поле не заполнено

silmarion

Полезный
Регистрация
21 Июн 2012
Сообщения
194
Реакции
19
Добрый день, редактирую старый компонент adsmanager
Часть объявлений заполняю через админку.
Если не укажу данные к примеру имя, телефон, текст, то на их месте выводится $row->name, $row->phone и т.д.
Код:
<div class="adsmanager_ads_contact">
  <?php if (@$positions[4]->title) {$strtitle = adsmanager_html::getLangDefinition($positions[4]->title);} ?>
  <?php echo "<b>".@$strtitle."</b>";
           if ($show_contact == 1) {    
             if (isset($fDisplay[5]))
             {    
               foreach($fDisplay[5] as $field)
               {  
                 adsmanager_html::showFieldValue($row,$field,$field_values,$conf->email_display,$option,$itemid,1,$plugins); /* 1 = Ad Mode */
               }
             }
             if (($row->userid != 0)&&($conf->allow_contact_by_pms == 1))
             {
               $pmsText= sprintf(ADSMANAGER_PMS_FORM,$row->user);
               $pmsForm = sefRelToAbs("index.php?option=$option&amp;page=show_message_form&amp;mode=1&amp;adid=".$row->id."&amp;Itemid=".$itemid);
               echo '<a href="'.$pmsForm.'">'.$pmsText.'</a><br />';
             }
           }
           else
           {
             echo ADSMANAGER_CONTACT_NOT_LOGGED;
           }
           ?> </div>
  </div>

Можно ли если значение в массиве пустое выводить какое-то значение? к примеру 'не заполнено'

Или вообще скрывать эту строку (даже лучше)?
 
Если я правильно понимаю, у вас проблема с перебором полей в foreach. Для порядка посмотрите значения переменных что идут в вызов showFieldValue(...), думаю в итоге придете к простой проверке в духе...

Код:
foreach($fDisplay[5] as $field)
{
  if(empty($row->$field)){ //или может empty($field_values)
    continue; // или уставновите значение у того что проверяли строкой выше
  }
  adsmanager_html::showFieldValue($row,$field,$field_values,$conf->email_display,$option,$itemid,1,$plugins); /* 1 = Ad Mode */
}
 
Назад
Сверху