спасибо за ссылки, я неправильно задал вопрос, скорее всего.
Дело в том, что в данном коде уже есть цикл
foreach ($options as $option) {....}
который и выводит данные из полученного массива в один ряд.
(Т.е. 1 ряд - 1 фотка). Поэтому, когда я пытался воткнуть внутрь этого цикла еще один, то естественно, в ряду повторялась одна и та же ячейка n раз.
Вот полный код, без моих "циклов":
PHP:
$query = 'SELECT * FROM #__exitpoll_options WHERE quid= '.$question->id.' AND published = 1 ORDER BY ordering';
$database->setQuery($query);
$options = $database->loadObjectList();
if($database->getErrorNum()) { echo $database->getErrorMsg(); }
// define
if(count($options))
{
$op_rows = '';
if($question->type == 1 OR $question->type == 2 )
{
$type = $question->type == 1 ? 'radio' : 'checkbox';
foreach ($options as $option)
{
if ($option->img_url)
{
$imgsize = $option->imgsize ? $option->imgor.'="'.$option->imgsize.'"' : '';
$op_img = '<img border = "0" '.$imgsize.' src="'. sefRelToAbs('images/contest/thumb'.$option->img_url).'" alt="" />';
if ($option->imglink)
{
$op_img = '<a href="#" onclick="javascript:window.open(\''
.sefRelToAbs('images/contest'.$option->img_url)
."','Pic', 'resizable=yes, scrollbars=yes, location=no, menubar=no, status=no, toolbar=no, width=640, height=480')\">"
.$op_img
.'</a>';
}
$op_rows .= '<td valign="top" colspan="2" bgcolor="#FFCC00" align=center>'.$op_img.'<br>
<input type="'.$type.'" name="voteid['.$question->id.'][]" id="p'.$option->id.'"value="'.$option->id.'"/>
<label for="p'.$option->id.'">'.$option->title.'</label></td>';
$op_rows .= '</tr>';
}
}
}
$qu_tmp['options'] = $op_rows;
}
Как прикрутить сюда цикл, чтобы выводилось по 3 колонки???
Где он должен начинаться, если сразу после SQL-запроса, то в браузере получаю Maximum execution time exceeded, а если внутри foreach , то фотки в одном ряду повторяются (как описано в предыдущем посте)???