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

Форум PHP

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

 

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

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

тема: printf
 
 автор: tashkent   (31.03.2008 в 09:37)   письмо автору
 
 

производится запрос к БД, результатом является названия городов, в количестве 45-50 шт.
делаю вывод do-while и printf , выводит в одну колонку, а надо выводить их в 3 колонки по 10 строк в каждой , как это организовать?

   
 
 автор: Valick   (31.03.2008 в 10:01)   письмо автору
 
   для: tashkent   (31.03.2008 в 09:37)
 

Вложеный цикл, внешний до конца массива или файла (где у вас города) или до количества строк(в вашем случае 10), а внутренний равный количеству столбцов.

   
 
 автор: Max Vasin   (31.03.2008 в 10:01)   письмо автору
 
   для: tashkent   (31.03.2008 в 09:37)
 

ну можно к примеру так.
результат запроса загоняем в массив, а затем цикл с шагом 3
//в массиве хранятся названия городов
$aaa[]=$row['town'];
//вывод по три
for ($i=0;$i<count($aaa);$i=$i+3){
echo $aaa[$i]."==".$aaa[$i+1]."===".$aaa[$i+2]."<br>";
}

можно и похитрее сделать))

----
Regards, Max Vasin.

   
 
 автор: mihdan   (31.03.2008 в 10:24)   письмо автору
 
   для: Max Vasin   (31.03.2008 в 10:01)
 

>результат запроса загоняем в массив
результат запроса и есть массив, зачем его загонять в массив

http://softtime.ru/forum/read.php?id_forum=1&id_theme=50227 - см. код sim5

   
 
 автор: Max Vasin   (31.03.2008 в 10:28)   письмо автору
 
   для: mihdan   (31.03.2008 в 10:24)
 

))) ну об этом я и писал, что можно и похитрее сделать))

----
Regards, Max Vasin.

   
 
 автор: cheops   (31.03.2008 в 11:07)   письмо автору
 
   для: tashkent   (31.03.2008 в 09:37)
 

Можно отталкиваться либо от такого скрипта
<?php
  $filename 
= array("all.php""auth.php",
                    
"auth.txt""base.txt",
                    
"chat.html""config.php",
                    
"count.txt""count_new.txt",
                    
"counter.dat""counter.php",
                    
"create.php""dat.db");
  
// Вычисляем количество элементов в массиве
  
$total count($filename);
  
// Количество столбцов в таблице
  
$numcols 3;
  
$counter 0;

  echo 
"<table border=1>";
  for(
$i 0$i $total$i++)
  {
    if(
$counter == 0) echo "<tr>";
    if(
$counter == $numcols)
    {
      echo 
"</tr>";
      
$counter 0;
    }
    echo 
"<td>".$filename[$i]."</td>";
    
$counter++;
  } 
  echo 
"</table>";
?>

либо от такого
<?php
  $filename 
= array("all.php""auth.php",
                    
"auth.txt""base.txt",
                    
"chat.html""config.php",
                    
"count.txt""count_new.txt",
                    
"counter.dat""counter.php",
                    
"create.php""dat.db");
  
// Вычисляем количество элементов в массиве
  
$total count($filename);
  
// Количество столбцов в таблице
  
$numcols 3;

  
// Вычисляем количество строк
  
$number = (int)($total/$numcols);
  if((float)(
$total/$numcols) - $number != 0$number++;

  
// Формируем промежуточный двумерный массив
  
for($i 0$i $number$i++)
  {
    for(
$j 0$j $numcols$j++)
    {
      
$arr[$i][$j] = $filename[$j*$number $i];
    }
  } 

  
// Выводим таблицу
  
echo "<table border=1>";
  for(
$i 0$i $number$i++)
  {
    echo 
"<tr>";
    for(
$j 0$j $numcols$j++)
    {
      echo 
"<td>".$arr[$i][$j]."</td>";
    }
    echo 
"</tr>";
  } 
  echo 
"</table>";
?>

   
Rambler's Top100
вверх

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