imho.ws
IMHO.WS  

Вернуться   IMHO.WS > Веб-мастеру > Веб-программирование > Для профессионалов
Опции темы
Старый 15.03.2006, 13:52     # 1
Mr.Vector!
Banned
 
Аватар для Mr.Vector!
 
Регистрация: 08.05.2004
Сообщения: 31

Mr.Vector! Путь к славе только начался
Сортировка полей в таблице

Короче требуется, чтобы массив можно было вывести в таблице с сортировкой по вертикали
парился-парился... кто-то с форума помог.
Теперь возникла проблема.
Нужно, чтобы помимо строк также можно было указать количество столбцов.
Допустим введем $rws = 20;
И скрипт выведет все в один столбец.
Мне же нужно, чтобы если мы задали $cols = 4, то приоритет шел на количество столбцов, а не строк и он показал таблицу с четырьмя столбцами...

Вот код:
Код:
$alls[0] = "первое значение";
$alls[1] = "второе значение";
$alls[2] = "третье значение";
$alls[3] = "четвертое значение";
$alls[4] = "пятое значение";
$alls[5] = "шестое значение";
$alls[6] = "седьмое значение";
$alls[7] = "восьмое значение";
$alls[8] = "девятое значение";
$alls[9] = "десятое значение";
$alls[10] = "последнее значение";

$kol=@alls;
$i;
$rws = 4; #количество строк таблицы
#$cols = 4; #количество столбцов таблицы

print("\n<TABLE BORDER=1>");
#рисуем табличку с данными из массива
for($stroka=0; $stroka<$rws; $stroka++){
    print("\n<TR>");
          for($i=$stroka; $i<=$kol; $i=$i+$rws)
          {
          print("<TD>$alls[$i]</TD>");
          }
    print("</TR>\n");
}

print("\n</TABLE>");
вроде понятно изложил.
Есть варианты?

Последний раз редактировалось Mr.Vector!; 15.03.2006 в 13:56.
Mr.Vector! вне форума  
Старый 15.03.2006, 13:59     # 2
SergoZD
::VIP::
 
Регистрация: 19.10.2003
Адрес: Питер
Пол: Male
Сообщения: 1 467

SergoZD Простой бог
SergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой бог
Mr.Vector!
Нужно сортировку прикрутить?
Чтобы сортировка как шла?
Код:
1 2 3
4 5 6
7 8 9
или
Код:
1 4 7
2 5 8
3 6 9
?
SergoZD вне форума  
Старый 15.03.2006, 14:02     # 3
Mr.Vector!
Banned
 
Аватар для Mr.Vector!
 
Регистрация: 08.05.2004
Сообщения: 31

Mr.Vector! Путь к славе только начался
второе.
она сейчас так и работает...
но нельзя явно задать количество столбцов.
Mr.Vector! вне форума  
Старый 15.03.2006, 14:07     # 4
SergoZD
::VIP::
 
Регистрация: 19.10.2003
Адрес: Питер
Пол: Male
Сообщения: 1 467

SergoZD Простой бог
SergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой бог
PHP код:
<?
$alls
[0] = "первое значение";
$alls[1] = "второе значение";
$alls[2] = "третье значение";
$alls[3] = "четвертое значение";
$alls[4] = "пятое значение";
$alls[5] = "шестое значение";
$alls[6] = "седьмое значение";
$alls[7] = "восьмое значение";
$alls[8] = "девятое значение";
$alls[9] = "десятое значение";
$alls[10] = "последнее значение";

$kol=sizeof($alls);
$rws 4#количество строк таблицы
$cols 4#количество столбцов таблицы

print("<TABLE BORDER=1>");
for(
$i=0;$i<$rws$i++) 

    print(
"<TR>"); 
    for(
$j=0$j<$cols$j++) 
    { 
        
$num=($i+$j*($rws)); 
        if (
$num<$kol)
        { 
            print(
"<TD>$alls[$num]</TD>"); 
        }
        else
        {
            print(
"<TD>&nbsp;</TD>"); 
        } 
    } 
    print(
"</TR>");
}  

print(
"</TABLE>");
?>

Последний раз редактировалось SergoZD; 15.03.2006 в 14:51.
SergoZD вне форума  
Старый 15.03.2006, 14:30     # 5
Mr.Vector!
Banned
 
Аватар для Mr.Vector!
 
Регистрация: 08.05.2004
Сообщения: 31

Mr.Vector! Путь к славе только начался
не работает.
1. после $j=0 пропущено ;
2. где здесь я задам $cols ?

сорри про cols понял.
вместо цифры 3, но все равно не работает!

зациклилось все ...

вместо $alls[] ты хотел сказать $alls[$num] ???

Последний раз редактировалось Mr.Vector!; 15.03.2006 в 14:29.
Mr.Vector! вне форума  
Старый 15.03.2006, 14:38     # 6
SergoZD
::VIP::
 
Регистрация: 19.10.2003
Адрес: Питер
Пол: Male
Сообщения: 1 467

SergoZD Простой бог
SergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой богSergoZD Простой бог
Ага, наглючил там малось. Редактировал по ходу. Представленный выше вариант работает =)
SergoZD вне форума  

Опции темы

Ваши права в разделе
Вы НЕ можете создавать новые темы
Вы не можете отвечать в темах.
Вы НЕ можете прикреплять вложения
Вы НЕ можете редактировать свои сообщения

BB код Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 01:01.




Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.