|
|
|
| Есть код, в нем параметр ({$subcategories_to_be_shown[j][1]}) - это наименования книг они отображаются в строчку (по вертикали) как сделать так чтобы разбивалось в два (три) столбика.
<td width="995" valign=top>{* description
*} {$selected_category.description}
<p> {* show subcategories *} {section name=i loop=$subcategories_to_be_shown}
<a class=standard href="index.php?categoryID={$subcategories_to_be_shown[j][0]}">{$subcategories_to_be_shown[j][1]}</a>
<br>
{/section} </td> | |
|
|
|
|
|
|
|
для: tetris-x
(21.06.2005 в 13:05)
| | Если на два столбика, то самое простое что приходит на ум это проверка на чёт/нечет. Чётные выводим в правый столбик, нечётные соответственно в левый. | |
|
|
|
|
|
|
|
для: tetris-x
(21.06.2005 в 13:05)
| | Можно прибегнуть к следующему приёму
<?php
// Начинаем таблицу
echo "<table>";
// $count число элементов в $subcategories_to_be_shown
$final = 0;
for($i = 0; $i<$count; $i++)
{
if($final == 0) echo "<tr>";
echo "<td>".$subcategories_to_be_shown[$i][0]."</td>";
$final++;
if($final == 2)
{
echo "</tr>";
$final = 0;
}
}
// Заканчиваем таблицу
echo "</table>";
?>
|
http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=366 | |
|
|
|
|
|
|
|
для: cheops
(21.06.2005 в 13:20)
| | Изменяя цифру 2 в строке
можно разбить массив на произвольное число столбцов. | |
|
|
|
|
|
|
|
для: cheops
(21.06.2005 в 13:21)
| | Хорош приём. | |
|
|
|
|
|
|
|
для: cheops
(21.06.2005 в 13:20)
| | Этот код надо вставлять непосредственно в код странички или кидать в папку с плагинами. | |
|
|
|
|
|
|
|
для: tetris-x
(21.06.2005 в 19:29)
| | Нужно вставлять в код странички... скорее всего. А что за папка с плагинами, плагины от чего? | |
|
|
|
|
|
|
|
для: cheops
(21.06.2005 в 19:35)
| | Я просто вставил в код, а мне выводится ошибка:
"; echo "
"; $final++; if($final == 2) { echo "
"; $final = 0; (smarty_compiler.class.php, line 417) in z:\home\localhost\www\shop\smarty\smarty_compiler.class.php on line 2062
Fatal error: Smarty: [in category.tpl.html line 62]: syntax error: unrecognized tag: if($final == 0) echo "
".$subcategories_to_be_shown[$i][0]."
Папка с лагинами вот эта \smarty\plugins | |
|
|
|
|
|
|
|
для: tetris-x
(21.06.2005 в 19:52)
| | Неужели нет другого способа решения этой проблемы? | |
|
|
|
|
|
|
|
для: tetris-x
(21.06.2005 в 19:52)
| | Вы вставили этот код в файл с расширением html? category.tpl.html? | |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(22.06.2005 в 05:32)
| | Да именно туда. | |
|
|
|
|
|
|
|
для: tetris-x
(22.06.2005 в 09:40)
| | Мне тут посоветовали плагин php, скажите мне куда всавлять значение чтобы шло разделение на столбики, всего в этом коде три столбика, но можно сделать любое количество.
<table border="1">
{section name=cont loop=$test}
<tr>
<td>{$test[cont]}</td>
{section_next name=cont}
<td>{$test[cont]}</td>
{section_next name=cont}
<td>{$test[cont]}</td>
</tr>
{/section}
</table> (эта таблица вставляется в код странички)
а этот плагин кидается в папку plugin.
<?php
// ./plugin/function.section_next.php
function smarty_function_section_next($params, &$smarty)
{
if (!isset($smarty->_sections[$params["name"]])){
$smarty->trigger_error("section_next: section '".$params["name"]."' not found");
return;
}
$smarty->_sections[$params["name"]]['index'] += $smarty->_sections[$params["name"]]['step'];
$smarty->_sections[$params["name"]]['iteration']++;
$smarty->_sections[$params["name"]]['rownum'] = $smarty->_sections[$params["name"]]['iteration'];
$smarty->_sections[$params["name"]]['index_prev'] = $smarty->_sections[$params["name"]]['index'] - $smarty->_sections[$params["name"]]['step'];
$smarty->_sections[$params["name"]]['index_next'] = $smarty->_sections[$params["name"]]['index'] + $smarty->_sections[$params["name"]]['step'];
$smarty->_sections[$params["name"]]['first'] = ($smarty->_sections[$params["name"]]['iteration'] == 1);
$smarty->_sections[$params["name"]]['last'] = ($smarty->_sections[$params["name"]]['iteration'] == $smarty->_sections[$params["name"]]['total']);
}
?> | |
|
|
|
|
|
|
|
для: tetris-x
(22.06.2005 в 09:47)
| | видимо завист от этого:
{section_next name=cont}
<td>{$test[cont]}</td>
|
| |
|
|
|
|
|
|
|
для: tetris-x
(22.06.2005 в 09:40)
| | > Да именно туда.
Но ведь вам дали пример php-кода. Он не будет выполнен в файлах с расширением html.
Вы используете шаблоны smarty. Здесь я не смогу вам помочь, т.к. не работал с ними. У них свой внутренний язык и синтаксис. | |
|
|
|