CODE (htmlphp):
скопировать код в буфер обмена
скопировать код в буфер обмена
- <style>
- .column{
- float:left;
- margin-right: 30px;
- width: 300px;
- }
- .column ul{
- list-style-type: none;
- background: #f6f6f6;
- border: 1px dotted gray;
- padding:5px;
- }
- </style>
- <?php
- //подключение к базе
- @mysql_connect("localhost","12345","12345") or die("Ошибка подключения к базе MySQL!");
- @mysql_select_db("example") or die("Ошибка подключения к базе данных");
- //выборка пунктов 1-го уровня каталога
- @$res1 = mysql_query("SELECT id FROM catalog WHERE parent=0");
- @$myarray1 = mysql_fetch_array($res1);
- $num = 0;
- //цикл подсчета общего количества записей 2-го уровня
- do
- {
- @$res3 = mysql_query("SELECT id FROM catalog WHERE parent='".$myarray1['id']."'");
- $num += mysql_num_rows($res3);
- }
- while ($myarray1= mysql_fetch_array($res1));
- //опять выборка пунктов 1-го уровня каталога
- @$res = mysql_query("SELECT id,name FROM catalog WHERE parent=0");
- @$myarray = mysql_fetch_array($res);
- $cols = 2; //число колонок
- $str = ceil($num/$cols); //округление в большую сторону числа строчек в одной колонке
- $j = 0; //обнуление счетчика
- for($i=1;$i<=$cols;$i++) //цикл счетчика колонок
- {
- $content = "<div class='column'>";
- //цикл вывода пунктов 1-го уровня каталога
- do
- {
- $content.="<h3>".$myarray['name']."</h3><ul>";
- @$res2 = mysql_query("SELECT name FROM catalog WHERE parent='".$myarray['id']."'");
- @$myarray2 = mysql_fetch_array($res2);
- //цикл вывода пунктов 2-го уровня каталога
- do
- {
- if($myarray['id']){
- $content.="<li>".$myarray2['name']."</li>";
- $j++;
- }
- }
- while($myarray2 = mysql_fetch_array($res2));
- $content.="</ul>";
- }
- while($myarray = mysql_fetch_array($res) AND $j<$str);
- $content.="</div>";
- if($str<$num)$str+=ceil($num/$cols);
- echo $content;
- }
- ?>