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
Форумы портала PHP.SU :: Версия для печати :: Динамический вывод таблицы
Форумы портала PHP.SU » PHP » Программирование на PHP » Динамический вывод таблицы

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

1. denandi - 23 Января, 2011 - 20:56:34 - перейти к сообщению
Всем привет!
Нужно вывести с DB (фото и названия)
в авт. с генерированную таблицу HTML в таком виде:
CODE (htmlphp):
скопировать код в буфер обмена
  1.  <tr>
  2.     <td>фото1</td>
  3.     <td>фото2</td>
  4.     <td>фото3</td>
  5.   </tr>
  6.   <tr>
  7.     <td>описание1</td>
  8.     <td>описание2</td>
  9.     <td>описание3</td>
  10.   </tr>

=======================
картинки как вывести - понятно, а как описания?
Спасибо за помощь
2. Uchkuma - 23 Января, 2011 - 21:28:56 - перейти к сообщению
Можно сделать в 2 прохода по массиву, но лучше изменить логику верстки. Выглядеть будет так же.
3. denandi - 23 Января, 2011 - 21:38:06 - перейти к сообщению
Uchkuma пишет:
Можно сделать в 2 прохода по массиву, но лучше изменить логику верстки. Выглядеть будет так же.


Вывод фот сделал так:
CODE (htmlphp):
скопировать код в буфер обмена
  1. if ($total >0){
  2. $numcols = 3;
  3. $counter = 0;
  4. echo '<table>';        
  5. while ($rowM = mysql_fetch_assoc($queryGrafmenu)){
  6. if ($counter == 0) {echo '<tr>';}
  7. if ($counter == $numcols){echo "</tr>"; $counter =0; }
  8. echo "<td><img src='../../img/temp_foto/".$rowM['foto_menu']."'/></td>";
  9.  $counter++;
  10.  
  11. }
  12. echo "</table>";  
  13. }


Мне было б очень интересно посмотреть на решения ваших вариантов этой задачи. спасибо.
4. Мелкий - 23 Января, 2011 - 21:56:23 - перейти к сообщению
0) получаете строку из базы
1) сохраняете нужную информацию в переменные
2) на каждой 3-ей строке выводите переменные в документ
5. denandi - 24 Января, 2011 - 19:56:13 - перейти к сообщению
Uchkuma пишет:
Можно сделать в 2 прохода по массиву, но лучше изменить логику верстки. Выглядеть будет так же.


Uchkuma! что означает изменить верстку? в чем преимущество? Спасибо.
6. Uchkuma - 24 Января, 2011 - 20:55:55 - перейти к сообщению
Ну вот вы рисуете таблицу, в первой строке которой фотографии, а во второй описания, таким образом, что под каждой ячейкой с фотографией, находится ячейка с ее описанием.
Понятно, что все ячейки рисуются последовательно, и с такой версткой придется проходить два цикла по массиву (или по результату запроса). Т.е. сначала для отрисовки первой строки, а затем второй.

В простейшем случае правильная верстка выглядела бы так:
CODE (html):
скопировать код в буфер обмена
  1.  
  2. <tr>
  3. <td>Фото<br>Описание</td>
  4. <td>Фото<br>Описание</td>
  5. <td>Фото<br>Описание</td>
  6. </tr>
  7.  

Если необходимо, чтобы фото и описание были каждое в своей ячейке, то можно сделать так:
CODE (html):
скопировать код в буфер обмена
  1.  
  2. <tr>
  3. <td>
  4.  
  5. <table>
  6. <tr>
  7. <td>Фото</td>
  8. </tr>
  9. <tr>
  10. <td>Описание</td>
  11. </tr>
  12. </table>
  13.  
  14. </td>
  15. <td>
  16. ...
  17. </td>
  18. <td>
  19. ...
  20. </td>
  21. </tr>
  22.  
  23.  

Но я, допустим, сделал бы это так, и оформил соответствующими стилями, для достижения нужного результата:
CODE (html):
скопировать код в буфер обмена
  1.  
  2. <tr>
  3. <td>
  4.  
  5. <dl>
  6. <dt>Фото</dt>
  7. <dd>Описание</dd>
  8. </dl>
  9.  
  10. </td>
  11. и т.д.
  12.  
7. denandi - 24 Января, 2011 - 21:34:36 - перейти к сообщению
Спасибо, за разъяснение! Я тоже много экспериментировал только с дивами и стилями. Но, честно говоря хотел найти решение под стандартный вариант. но не смог решить с логикой. был бы рад помощи. хотя бы сырец.. Улыбка
спасибо.
8. JustUserR - 25 Января, 2011 - 15:47:19 - перейти к сообщению
denandi пишет:
Я тоже много экспериментировал только с дивами и стилями
В качестве возможного варианта решения предполагаемой задачи позволяющего осуществить вывод элементов таблицы в целевом порядоке отличающемся от последовательности обработки информационных полей из оригинального источника данных - возможно использование мануальной или автоматизированной буферазации позволяющей осуществить формирование соответствующей формы HTML-кода

 

Powered by ExBB FM 1.0 RC1