Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Категории

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
FoxRus
Отправлено: 29 Декабря, 2011 - 05:47:29
Post Id


Новичок


Покинул форум
Сообщений всего: 4
Дата рег-ции: Дек. 2011  


Помог: 0 раз(а)




Вывожу название категорий из mysql и хочу распределить их по 3 названиям на строчке, то есть так:


Название 1 Название 2 Название 3

Название 4 Название 5 Название 6

а не просто списком в низ, как это можно сделать?

Надеюсь кто нибудь понял меня по написанному выше,хотя я и сам себя не особо понял...)
 
 Top
DeepVarvar Супермодератор
Отправлено: 29 Декабря, 2011 - 06:57:25
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




Таблица в цикле и условие: if ($i%3 == 0) echo '</tr>';
 
 Top
lamozavrik
Отправлено: 29 Декабря, 2011 - 09:15:38
Post Id



Частый гость


Покинул форум
Сообщений всего: 161
Дата рег-ции: Дек. 2011  


Помог: 4 раз(а)




Если это должно выводится не в таблице, то можно как то так:
PHP:
скопировать код в буфер обмена
  1. $cats = array('HOME', 'CATALOG', 'PORTFOLIO', 'ABOUT', 'CONTACTS', 'OTHER');//К примеру это список категорий
  2.  
  3. //Счетчику вначале присваиваем 1, что бы перевод строки не поставился в самом начале
  4. for($i=1; $i<=count($cats); $i++){
  5.     echo $cats[$i-1].' ';//Выводим категории
  6.         if($i%3==0){
  7.             echo '<br />'; //После 3-х категорий переносим строку
  8.         }
  9. }

Ну как то так =))
(Добавление)
Если таблицей, то можно как то так:

PHP:
скопировать код в буфер обмена
  1. $cats = array('HOME', 'CATALOG', 'PORTFOLIO', 'ABOUT', 'CONTACTS', 'OTHER');
  2. $count = 3;
  3. $rows = ceil(count($cats)/$count);
  4.  
  5. echo '<table>';        
  6. for($i=0; $i<$rows; $i++){
  7.    
  8.     echo '<tr>';
  9.     for($j=0; $j<$count; $j++){
  10.         echo '<td>'.$cats[$j].'</td>';
  11.     }
  12.     echo '</tr>';
  13. }
  14. echo '</table>';
Улыбка


-----
Ударим крепким сном по мукам совести!
 
 Top
FoxRus
Отправлено: 31 Декабря, 2011 - 11:19:50
Post Id


Новичок


Покинул форум
Сообщений всего: 4
Дата рег-ции: Дек. 2011  


Помог: 0 раз(а)




lamozavrik спасибо,но только не могу нормально вывести из базы, когда вывожу он идет списком в низ + дублирует категории...
 
 Top
PATCH
Отправлено: 31 Декабря, 2011 - 15:29:41
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 924
Дата рег-ции: Апр. 2011  


Помог: 22 раз(а)




PHP:
скопировать код в буфер обмена
  1. $select_db = mysql_query("SELECT * FROM categories");
  2. $x=0;
  3. echo '<table>';  
  4.  echo '<tr>';
  5. while($row_cat = mysql_fetch_array($select_db))
  6. {
  7.    $x++;
  8. if($x>3)
  9. {echo "<tr>";}
  10.  
  11. else { echo '<td>'.$row_cat['title'].'</td>';}
  12.  
  13. if($x>3)
  14. {echo "</tr>"; $x=0;}
  15.    
  16. }
  17.  echo '</tr>';
  18. echo '</table>';

тести у меня сработало без отказно )
 
 Top
FoxRus
Отправлено: 05 Января, 2012 - 11:33:45
Post Id


Новичок


Покинул форум
Сообщений всего: 4
Дата рег-ции: Дек. 2011  


Помог: 0 раз(а)




PATCH работает но только если в базе больше 3х категорий выводится только 3 а все остальные теряются где то)))
 
 Top
PATCH
Отправлено: 05 Января, 2012 - 23:31:55
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 924
Дата рег-ции: Апр. 2011  


Помог: 22 раз(а)




пардон) так правильнее (не проверял)


PHP:
скопировать код в буфер обмена
  1. $select_db = mysql_query("SELECT * FROM categories");
  2.  
  3. $x=0;
  4.  
  5. echo '<table>';  
  6.  
  7.  echo '<tr>';
  8.  
  9. while($row_cat = mysql_fetch_array($select_db))
  10.  
  11. {
  12.  
  13.    $x++;
  14.  
  15. if($x=1)
  16.  
  17. {echo "<tr>";}
  18.  
  19.  
  20.  
  21. else { echo '<td>'.$row_cat['title'].'</td>';}
  22.  
  23.  
  24.  
  25. if($x=3)
  26.  
  27. {echo "</tr>"; $x=0;}
  28.  
  29.    
  30.  
  31. }
  32.  
  33.  echo '</tr>';
  34.  
  35. echo '</table>';
 
 Top
FoxRus
Отправлено: 06 Января, 2012 - 16:14:56
Post Id


Новичок


Покинул форум
Сообщений всего: 4
Дата рег-ции: Дек. 2011  


Помог: 0 раз(а)




PATCH спасибо)))
слегка поменял и всё заработало
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB