Alien это я пишу еще до теста твоего примера, если делать как я писал выше, то ошибка кроется в потере переменных, т.е. при вызове функии getpages, (хоть include, хоть в теле php, который вызываем) например
PHP:--------------------------------------------------------------------------------
INCLUDE("getpages.inc");
$i=0;
while ($i<1000) {
$i++;
$array[$i]=$i;
}
if(!isset($page)) $page = 1; //если $page не существует, то $page=1
$pp = 50; // всего на страницу
$total = sizeof($array); // всего записей (число элементов массива $array)
$res = intval($total / $page); //целочисленное значение переменной в десятичной системе счисления.
$rem = $total % $page; //остаток от деления
if($rem > 0) { $res++; }
$pages = $res; // получили кол-во страниц
$npst = ($page-1)*$pp; // в начале 0
$print_pages = getPages($total, $page, "$PHP_SELF?&", $pp); //задействовали функцию
print "
";
print "";
print "$print_pages | ";
print "
";
print "";
for($i=$npst;$i<($npst+$pp);$i++) {
print "";
print "";
print "$array[$i] | ";
print "
";
print "";
}
?>
PHP:--------------------------------------------------------------------------------
Вот ример который приведен выше он работает, но как только я изменяю
while ($i<1000) {
$i++;
$array[$i]=$i; }
положем на
while ($i<$kolvo) {
$i++;
$array[$i]=$i; }
где $kolvo задается не явно ($kolvo=1000;), а передается из другой формы, то превое отображение в норме (первый вызов getpages), но второе и последующее к сожалению нет. Проследил теряется значение $kolvo, попытался обозвать GLOBAL, ноль имоций и даже STATIC, как сделать чтобы getpages заодно возвращала и другие преременные, пускай переданные ей насельно и не используемые
getPages($total, $page, "link", $pp, $kolvo)
?
11
« : 14 Марта 2002, 20:55:38 »
Добавлю, что этот пример как тест, задача решается естественно совершенно иная, и выглядет там все гораздо страшней...
12
« : 14 Марта 2002, 20:51:17 »
INCLUDE("getpages.inc");
$i=0;
while ($i<1000) {
$i++;
$array[$i]=$i;
}
if(!isset($page)) $page = 1; //если $page не существует, то $page=1
$pp = 50; // всего на страницу
$total = sizeof($array); // всего записей (число элементов массива $array)
$res = intval($total / $page); //целочисленное значение переменной в десятичной системе счисления.
$rem = $total % $page; //остаток от деления
if($rem > 0) { $res++; }
$pages = $res; // получили кол-во страниц
$npst = ($page-1)*$pp; // в начале 0
$print_pages = getPages($total, $page, "$PHP_SELF?&", $pp); //задействовали функцию
print "
";
print "";
print "$print_pages | ";
print "
";
print "";
for($i=$npst;$i<($npst+$pp);$i++) {
print "";
print "";
print "$array[$i] | ";
print "
";
print "";
}
?>
Пример работает на ура, большое спасибо, НО моя проблема заключается в том, то вышеуказанный код вызывается не из самого скрипта, а из библиотеки ( и является функцией).
Например код находится в файле test.inc и заключен между
function view()
{
..............
.............
}
Тогда...---->
Untitled
INCLUDE("test.inc")
view();
?>
Почему-то в этом случае выводиться заголовок, выводится первая страница, но при нажатии на ссылочки (1 2 3 ...) не происходит.
Как с этим бороться?
Мне кажется, что дело в "$PHP_SELF?&", но я не уверен.
ПОМОГИТЕ ПОЖАЛУЙСТО.....
13
« : 13 Марта 2002, 02:10:33 »
Господа, помогите, предположем есть массив
$massiv
=($test); //например для простоты
//в нем порядка 1000 элементов //необходимо их вывести постранично
что нибудь в духе
$i=0
while ($i<1000)
print"$massiv=($test);"
$i++;
endwhile;
выводит весь "фарш" на одной странице (а надо разбить).
Прочитав все сказанное по этому вопросу в FAQ я так и не понял как мне сделать постраничный вавод 
Возьмем последний пример господина AlieN~а
while($i<$total_katalog){
if($i%20==0){
$b_1="";$b_2="";
$page_print=$i/20;
if($page_print==$page){$b_1="[";$b_2="]";}
print "$b_1$page_print$b_2 ";
}
++$i;
}
Вроде все понятно, ну и что дальше-то, и ссылочки создаются и нумерация, а как страницы генерируются не понимаю... :insane:
__________________________________________________
Огромная просьба помогите....
:mad:
14
« : 13 Марта 2002, 02:04:53 »
Господа, помогите, предположнм есть массив
$massiv
=($test); //например для простоты
//в нем порядка 1000 элементов //необходимо их вывести постранично
что нибудь в духе
$i=0
while ($i<1000)
print"$massiv=($test);"
$i++;
endwhile;
выыедит весь "фарш" на одной странице.
Прочитав все вышесказанное я так и не понял как мне сделать постраничный вавод 
Возьмем последний пример господина AlieN~а
while($i<$total_katalog){
if($i%20==0){
$b_1="";$b_2="";
$page_print=$i/20;
if($page_print==$page){$b_1="[";$b_2="]";}
print "$b_1$page_print$b_2 ";
}
++$i;
}
Вроде все понятно, ну и что дальше-то, и ссылочки создаются и нумерация, а как страницы генерируются не понимаю... 
____________________________________________________
Огромная просьба помогите....
Страницы: [1]