Вход • Регистрация

Убейте меня дивом в массиве

  • 06 ноября 2015 г.
  • Чувствую себя ламером полным, но вот заклинило что-то и не могу сообразить.

    Суть: характеристики товаров выводятся в массиве.
    Заключила это дело в див1, внутри заключила название характеристики в див2, значение характеристики в див3.

    Все хорошо, но при выводе на сайте получается лишний див, от которого не могу избавиться.

    Код
    echo '<div class="parametr_blok">';
    foreach ($result["rows"] as $param)
    {
    echo '<span class="parametr">'.$param["name"] . '';
    if ($param["value"])
    {
    echo ': </span><span class="znach">';
    if($param["type"] == "attachments")
    {
    foreach ($param["value"] as $a)
    {
    if ($a["is_image"])
    {
    if($param["use_animation"])
    {
    echo ' <a href="'.$a["link"].'" rel="prettyPhoto[gallery'.$result["id"].'shop]"><img src="'.$a["link_preview"].'"></a> <a href="'.$a["link"].'" rel="prettyPhoto[gallery'.$result["id"].'shop_link]">'.$a["name"].'</a>';
    }
    else
    {
    echo ' <a href="'.$a["link"].'"><img src="'.$a["link_preview"].'"></a> <a href="'.$a["link"].'">'.$a["name"].'</a>';
    }
    }
    else
    {
    echo ' <a href="'.$a["link"].'">'.$a["name"].'</a>';
    }
    }
    }
    elseif($param["type"] == "images")
    {
    foreach ($param["value"] as $img)
    {
    echo '<img src="'.$img["src"].'" width="'.$img["width"].'" height="'.$img["height"].'" alt="'.$img["alt"].'" title="'.$img["title"].'">';
    }
    }
    elseif (!empty($param["link"]))
    {
    echo '<a href="'.BASE_PATH_HREF.$param["link"].'">'.$param["value"].'</a>';
    }
    elseif (is_array($param["value"]))
    {
    foreach ($param["value"] as $p)
    {
    if ($param["value"][0] != $p)
    {
    echo ', ';
    }
    if (is_array($p))
    {
    if ($p["link"])
    {
    echo '<a href="'.BASE_PATH_HREF.$p["link"].'">'.$p["name"].'</a>';
    }
    else
    {
    echo $p["name"];
    }
    }
    else
    {
    echo $p;
    }
    }
    }
    else
    {
    echo $param["value"];
    }
    //единицы измерения
    if(! empty($param["measure_unit"]) && $param["type"] == 'numtext')
    {
    echo ' '.$param["measure_unit"];
    }
    }
    if($param["text"])
    {
    echo '<div class="shop_param_text">'.$param["text"].'</div>';
    }
    echo '</span></div><div class="parametr_blok">';
    }
    echo '</div>';
    • 06 ноября 2015 г. , редакция: 06 ноября 2015 г.
    • третья строчка снизу
      Код
      echo '</span></div><div class="parametr_blok">';

      должна быть
      Код
      echo '</span>';


      Это только одна ошибка, а у Вас тут в коде изобилие открытых и незакрытых тегов, например 7 строчка сверху
      Код
      echo ': </span><span class="znach">';

      и так далее, это не сложно, потратьте 10 минут на предмет корректности тегов
      • 06 ноября 2015 г.
      • Спасибо.
        Поняла. Див в принципе за пределы массива выносить не нужно было. Т.е. я первую строчку переношу в массив, последнюю вообще стираю.

Новости

  • 18 июня
  • В сборке большое обновление demo-шаблона, дополнительная защита от спама, улучшение YML-импорта и еще много важного и интересного.
  • 24 апреля
  • В новой сборке совершили революцию в структурировании кастомизированной информации в шаблонах, добавили авторегистрацию пользователей, усовершенствовали защиту от спама, актуализировали накопительную скидку, а также улучшили производительность и стабильность работы системы.
  • 12 января
  • После выхода сборки 7.1 мы выпустили уже три патча, в каждом из которых улучшаем административную часть сайта. Сборка DIAFAN.CMS 7.1.3 уже доступна к установке. 

Форум