Т.е.
1
2
3
и т.д.
Как сделать их по 2 в ряду?
1 2
3 4
и т.д.
Сами по себе они маленькие и по 3-4 могут поместиться.
Заранее спасибо!!!
Спустя 16 минут, 43 секунды (29.12.2011 - 01:29) Winston написал(а):
$arr = range(1, 10);
$i = -1;
echo "<table border='1'><tr>\n";
while($i < (sizeof($arr)-1))
{
$i++;
echo "<td>";
echo $arr[$i];
echo "</td>\n";
if(($i % 2) != 0)
echo "</tr><tr>";
}
echo "</tr></table>";
Спустя 12 минут, 37 секунд (29.12.2011 - 01:42) aveBen написал(а):
Спасибо за отклик!
Что-то на подобии этого я уже проходил. Я из уроков Irbis-Team, не могу никак понять как это реализовать в конструкции MVC.
controller.php
model.php
TPL-ка
Помогите, пожалуйста!!! В этом случае он стандартно горизонтально идет, строка, над\под строкой. :\
Что-то на подобии этого я уже проходил. Я из уроков Irbis-Team, не могу никак понять как это реализовать в конструкции MVC.
controller.php
$collect = new collection_model('collection');
if($GET['mod'] === 'collection')
{
$collect -> createCategory($GET['parent']);
$collect -> createCollect($GET['id']);
$back_link = '<a href="'. href('mod=cat', 'parent='. $GET['parent']) .'">'. IRB_LANG_BACK .'</a>';
$cat_name = $collect -> cat_name;
$collection = $collect -> createRows('collection/collection', 'collection');
}
elseif($GET['mod'] === 'cat')
{
$collect -> createCategory($GET['parent']);
$collect -> createListCollect($GET['parent'], IRB_CONFIG_NUM_WORDS);
$back_link = '<a href="'. href('mod=all') .'">'. IRB_LANG_BACK .'</a>';
$cat_name = $collect -> cat_name;
$collection = $collect -> createRows('collection/rows', 'collection', true);
}
else
{
$collect -> createCategory();
$cat_name = $back_link = '';
$collection = $collect -> createRows('collection/rows', 'cat');
}
include IRB_ROOT .'/skins/tpl/collection/show.tpl';
model.php
class collection_model
{
public $table, $cat_name;
private $res;
/**
* Конструктор
* @param string $table
*/
public function __construct($table)
{
$this->table = $table;
}
/**
* Метод генерации списка категорий
* @param int $id
* @return void
*/
public function createCategory($id = '')
{
$sql = empty($id) ? ' ORDER BY `sort` ASC ' : ' WHERE `id` = '.(int)$id ;
$res = mysqlQuery("SELECT *
FROM `". IRB_DBPREFIX . $this->table ."_cat`
". $sql
);
if(empty($id))
$this->res = $res;
else
$this->cat_name = mysql_result($res, 0, 'name');
}
/**
* Метод генерации списка товаров выбранной категории
* @param int $id
* @param int $num_words
* @return void
*/
public function createListCollect($id, $num_words)
{
$this->res = mysqlQuery("SELECT `id`, `name`, `photo`,
SUBSTRING_INDEX(`description`,' ', ". $num_words .") AS `description`
FROM `". IRB_DBPREFIX . $this->table ."`
WHERE `id_parent` = ".(int)$id ."
ORDER BY `sort` ASC "
);
}
/**
* Метод генерации товара
* @param int $id
* @return void
*/
public function createCollect($id)
{
$this->res = mysqlQuery("SELECT *
FROM `". IRB_DBPREFIX . $this->table ."`
WHERE `id` = ".(int)$id
);
}
/**
* Метод представления.
* @param string $template
* @param string $mod
* @param string $flag
* @return string
*/
public function createRows($template, $mod, $flag = false)
{
$rows = '';
$tpl = getTpl($template);
while($row = mysql_fetch_assoc($this->res))
{
$row['name'] = htmlspecialchars($row['name']);
$row['description'] = nl2br(htmlspecialchars($row['description']));
$row['src'] = !empty($row['photo']) ? IRB_HOST . 'upload/' . $row['photo'] : '';
if(!$flag)
$row['url'] = href('mod='. $mod, 'parent='. $row['id']);
else
$row['url'] = href('mod='. $mod, 'id='. $row['id']);
$rows .= parseTpl($tpl, $row);
}
return $rows;
}
}
TPL-ка
<div class="production_row">
<h3><?php echo $tpl_name; ?></h3>
<img src="<?php echo $tpl_src; ?>"
width="120px" height="120px"
alt="<?php echo $tpl_name; ?>"
title="<?php echo $tpl_name; ?>"
border="1" align="left" />
<?php echo $tpl_description; ?>
<br /><br />
<a href="<?php echo $tpl_url; ?>">Подробнее</a>
</div>
Помогите, пожалуйста!!! В этом случае он стандартно горизонтально идет, строка, над\под строкой. :\
Спустя 15 часов, 31 минута, 31 секунда (29.12.2011 - 17:14) aveBen написал(а):
Подскажите кто нибудь пожалуйста, уже исковырял весь контроллер с шаблоном, не выходит
Я так понял что в данном случае модель я не трогаю вообще?
Я так понял что в данном случае модель я не трогаю вообще?
Спустя 5 часов, 41 минута, 50 секунд (29.12.2011 - 22:55) Winston написал(а):
В какой переменной хранятся данные которые нужно вывести в две колонки ?
Спустя 8 минут, 5 секунд (29.12.2011 - 23:03) aveBen написал(а):
Цитата (Winston @ 29.12.2011 - 19:55) |
В какой переменной хранятся данные которые нужно вывести в две колонки ? |
Вот в этой - $collection.
Данные - таблицы с информацией, они идут сверху вниз, по одной таблице, хотелось бы что бы сверху и вниз но по две таблицы в ряд.
Спустя 22 часа, 44 минуты, 49 секунд (30.12.2011 - 21:48) aveBen написал(а):
Даже и не знаю что и делать, прогуглил, выдало пару вариантов, но не вышло
Уже надежду потерял...
Уже надежду потерял...
Спустя 8 минут, 15 секунд (30.12.2011 - 21:57) Winston написал(а):
Эту тему не смотрел ?
Спустя 1 час, 17 минут, 6 секунд (30.12.2011 - 23:14) aveBen написал(а):
Цитата (Winston @ 30.12.2011 - 18:57) |
Эту тему не смотрел ? |
Читал, пытался внедрить код в скрипт от Ирбисов. Он мне на сайт выводит информацию самого файла (show.tpl) изнутри почему-то. Имею ввиду код, ошибка моя в том, что не получилось правильно запрос к БД составить, включая в него (запрос) код из того поста Kirika.
Помогите пожалуйста запрос составить со скриптом генерации информации в горизонтальном виде, в остальном вроде все должно работать.
Спустя 2 дня, 19 часов, 51 минута, 6 секунд (3.01.2012 - 19:05) aveBen написал(а):
Никто не поможет?
Спустя 5 дней, 6 часов, 31 минута, 52 секунды (9.01.2012 - 01:37) aveBen написал(а):
Ну хоть кто нибудь, откликнитесь ! Уже мозг сломал, не выходит ничего
Спустя 17 минут, 18 секунд (9.01.2012 - 01:54) redreem написал(а):
конкретизируй задачу. тебе нужен php-код или вариант верстки? если верстка - чем верстать - дивами, таблицами?
Спустя 18 часов, 5 минут, 6 секунд (9.01.2012 - 19:59) aveBen написал(а):
Цитата (redreem @ 8.01.2012 - 22:54) |
конкретизируй задачу. тебе нужен php-код или вариант верстки? если верстка - чем верстать - дивами, таблицами? |
php код, который встроен будет в вышеизложенные мною части MVC. На данный момент, у меня таблицы идут сверху вниз, а нужно что бы 3 таблицы в ряд допустим и так далее, тоже сверху вниз.
Спустя 15 часов, 13 минут, 22 секунды (10.01.2012 - 11:12) aveBen написал(а):
Помогите решить задачу, пожалуйста!!!
Спустя 22 часа, 45 минут, 2 секунды (11.01.2012 - 09:57) aveBen написал(а):
Откликнитесь хоть кто нибудь, пожалуйста!!! Проблема для меня очень актуальна... :\
Спустя 14 часов, 42 минуты, 38 секунд (12.01.2012 - 00:40) aveBen написал(а):
Люди ау, я же не так много прошу, всего лишь помочь или объяснить мне как составить запрос к БД на примере кода выше...
Как в этом посте.
Пожалуйста, помогите !!!
Как в этом посте.
Пожалуйста, помогите !!!
Спустя 36 минут, 8 секунд (12.01.2012 - 01:16) inpost написал(а):
Winston дал АБСОЛЮТНО готовый код. Лишь переменные нужные подставь. Разве много работы осталось для самого себя?
Спустя 17 минут, 55 секунд (12.01.2012 - 01:34) aveBen написал(а):
Цитата (inpost @ 11.01.2012 - 22:16) |
Winston дал АБСОЛЮТНО готовый код. Лишь переменные нужные подставь. Разве много работы осталось для самого себя? |
Не вышло с тем кодом у меня, я не могу никак понять как это в MVC ирбиса реализовать, уже и перечитал уроки, и код исковырял весь и методом тыка пробовал... Не выходит
Спустя 16 часов, 38 минут, 37 секунд (12.01.2012 - 18:13) aveBen написал(а):
inpost
Помогите пожалуйста грамотно написать код. Я обычно сам пытаюсь вникнуть, но тут торможу жутко...
Буду очень благодарен и признателен!!!
P.S.
Благодарность выражу материально, через веб мани!
Помогите пожалуйста грамотно написать код. Я обычно сам пытаюсь вникнуть, но тут торможу жутко...
Буду очень благодарен и признателен!!!
P.S.
Благодарность выражу материально, через веб мани!
Спустя 5 часов, 39 минут, 3 секунды (12.01.2012 - 23:52) aveBen написал(а):
Получилось вывести таблицы в ряд горизонтально, только проблема в том, что выводит по 2 одинаковые, т.е.
1-1
2-2
3-3
1-1
2-2
3-3
Спустя 4 минуты, 9 секунд (12.01.2012 - 23:56) Winston написал(а):
Цитата (aveBen @ 12.01.2012 - 22:52) |
Получилось вывести таблицы в ряд горизонтально, только проблема в том, что выводит по 2 одинаковые, т.е. 1-1 2-2 3-3 |
Покажи код, как сделал.
Спустя 5 минут, 26 секунд (13.01.2012 - 00:01) aveBen написал(а):
<?php
$arr = range(1, 5);
$i = -1;
echo "<table border='1'><tr>\n";
while($i < (sizeof($arr)-1))
{
$i++;
echo "<td>";
// переменная с данными
echo $collection;
echo "</td>\n";
if(($i % 2) != 0)
echo "</tr><tr>";
}
echo "</tr></table>";
?>
Если я правильно понял свою ошибку, он выводит из таблицы БД одну запись 2 раза...
Спустя 8 минут, 51 секунда (13.01.2012 - 00:10) Winston написал(а):
Ну в твоем случае вот так можно
$i = -1;
echo "<table border='1'><tr>\n";
while($row = mysql_fetch_assoc($result))
{
$i++;
echo "<td>";
// переменная с данными
echo $row['name'];
echo "</td>\n";
if(($i % 2) != 0)
echo "</tr><tr>";
}
echo "</tr></table>";
Спустя 19 минут, 43 секунды (13.01.2012 - 00:30) aveBen написал(а):
Цитата (Winston @ 12.01.2012 - 21:10) |
Ну в твоем случае вот так можно$i = -1; |
Сразу вопрос, если сам запрос к базе идет в другом файле (что я приводил выше), как я вытащу ассоциативный массив в шаблонизаторе? Ведь если вставить переменную
$collection
вместо result, ошибку выдаст...Спустя 47 минут, 11 секунд (13.01.2012 - 01:17) Winston написал(а):
Значит лучше в обработчике делать
А в шаблонизаторе писать
PS: не тестил, но вроде должно работать.
while($row = mysql_fetch_assoc($result))
$data[] = $row;
А в шаблонизаторе писать
$i = -1;
echo "<table border='1'><tr>\n";
while($i < sizeof($data))
{
$i++;
echo "<td>";
// переменная с данными
echo $data[$i]['name'];
echo "</td>\n";
if(($i % 2) != 0)
echo "</tr><tr>";
}
echo "</tr></table>";
PS: не тестил, но вроде должно работать.
Спустя 20 часов, 30 минут, 19 секунд (13.01.2012 - 21:47) aveBen написал(а):
Цитата (Winston @ 12.01.2012 - 22:17) |
Значит лучше в обработчике делатьwhile($row = mysql_fetch_assoc($result)) PS: не тестил, но вроде должно работать. |
Я не совсем понимаю как это внедрить в обработчик, точнее в какой запрос именно, из того кода обработчика что я выложил выше..
Как это реализовать, подскажите пожалуйста.
Спустя 36 минут, 9 секунд (13.01.2012 - 22:24) inpost написал(а):
aveBen
В данном случае используй внутри .tpl полностью while() { }, который обычным include подключи, а не через шаблонизатор getTpl, как ты делаешь, если я правильно тебя понял.
В данном случае используй внутри .tpl полностью while() { }, который обычным include подключи, а не через шаблонизатор getTpl, как ты делаешь, если я правильно тебя понял.
Спустя 25 минут, 45 секунд (13.01.2012 - 22:49) aveBen написал(а):
Цитата (inpost @ 13.01.2012 - 19:24) |
aveBen В данном случае используй внутри .tpl полностью while() { }, который обычным include подключи, а не через шаблонизатор getTpl, как ты делаешь, если я правильно тебя понял. |
Последний код, который привел Winston, я делаю так:
while (){} в show.tpl
while который получает ассоциативный массив, в model.php
Вот как раз с последним и трудности, у меня же информация из БД идет, следовательно нужно каким-то образом этот while внедрить в model.php. Ну это если я хотя бы приблизительно правильно понял, технологию MVC.
Спустя 1 день, 5 часов, 7 секунд (15.01.2012 - 03:49) aveBen написал(а):
Цитата (Winston @ 12.01.2012 - 22:17) |
Значит лучше в обработчике делатьwhile($row = mysql_fetch_assoc($result)) PS: не тестил, но вроде должно работать. |
Помогите пожалуйста грамотно составить обработчик с функцией while.
А то у меня уже паника начинается, все что до этого по урокам Ирбиса изучал, не помогает в данном случае :(