Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Два или три ряда вместо одного.
 
 автор: 123php   (31.10.2005 в 14:55)   письмо автору
 
 

Здравствуйте! У меня есть модуль, код которого размещен ниже. Картинки (продукция) выводится в один столбик как указано в прикрепленном файле. Как сделать так, чтобы было два или три столбика?


global $mosConfig_absolute_path;

/* Load the phpshop main parse code */
require_once( $mosConfig_absolute_path.'/components/com_phpshop/phpshop_parser.php' );

$max_items = $params->get( 'max_items', 2 ); //maximum number of items to display
$category_id = $params->get( 'category_id', null ); // Display products from this category only

require_once( CLASSPATH. 'ps_product.php');
$ps_product = new ps_product;
$db=new ps_DB;
if ( $category_id ) {
  $q  = "SELECT product_sku FROM #__pshop_product, #__pshop_product_category_xref, #__pshop_category WHERE ";
  $q .= "product_parent_id=''";
  $q .= "AND #__pshop_product.product_id=#__pshop_product_category_xref.product_id ";
  $q .= "AND #__pshop_category.category_id=#__pshop_product_category_xref.category_id ";
  $q .= "AND #__pshop_category.category_id='$category_id'";
  $q .= "AND #__pshop_product.product_publish='Y' ";
  $q .= "ORDER BY product_name DESC";
}
else {
  $q  = "SELECT product_sku FROM #__pshop_product WHERE ";
  $q .= "product_parent_id='' AND vendor_id='".$_SESSION['ps_vendor_id']."' ";
  $q .= "AND #__pshop_product.product_publish='Y' ";
  $q .= "ORDER BY product_name DESC";
}
$db->query($q);

$i=0;
while($db->next_record()){
  $prodlist[$i]=$db->f("product_sku");
  $i++;
}

if($db->num_rows() > 0){ ?>
            <table border="0" cellpadding="0" cellspacing="0" width="100%">
            <?php

              srand 
((double) microtime() * 10000000);
              if (
sizeof($prodlist)>1)
                  
$rand_prods array_rand ($prodlist$max_items);
              else
                  
$rand_prods rand (4545.3545$max_items);
                  
              if (
$max_items==1) { ?>
                <tr align="center" class="sectiontableentry1">
                  <td><?php
                    $ps_product
->show_snapshot($prodlist[$rand_prods]);
                    
?><br />
                    </td>
                  </tr><?php
              
}
              
              else { 
                for(
$i=0$i<$max_items$i++) { 
                      if (
$i%2)
                          
$sectioncolor "sectiontableentry2";
                      else
                          
$sectioncolor "sectiontableentry1";
                
?>
                  <tr align="center" class="<?php echo $sectioncolor ?>">
                    <td><?php
                  $ps_product
->show_snapshot($prodlist[$rand_prods[$i]]);
                  
?><br />
                    </td>
                  </tr><?php
                
}
              }
        
?>
        </table>
    <?php
}

?>

   
 
 автор: P@Sol   (31.10.2005 в 15:06)   письмо автору
 
   для: 123php   (31.10.2005 в 14:55)
 

по-моему тут:

$max_items = $params->get( 'max_items', 2 ); //maximum number of items to display 

   
 
 автор: 123php   (01.11.2005 в 09:22)   письмо автору
 
   для: P@Sol   (31.10.2005 в 15:06)
 

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

   
 
 автор: Loki   (01.11.2005 в 09:38)   письмо автору
 
   для: 123php   (01.11.2005 в 09:22)
 

Ввести вокруг

$ps_product->show_snapshot($prodlist[$rand_prods[$i]]); 

еще один цикл, отвечающий за количество столбцов.

<?
for ($i=1;... //цикл отвечающий за количество строк (макс значение надо разделить на количество столбцов)
{
echo 
"<tr>;
for (
$j=1; $j=3; $j++) //вывод столбцов (для примера трех)
 {
  echo "
<td>";
  
$ps_product->show_snapshot($prodlist[$rand_prods[$i]]); 
  echo "
</td>";
 }
echo "
</tr>":
}

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования