Разбивка содержимого на страницы
Вот значит код
Код:
$count=5;
if (!isset($page))
$page=0;
$db=db_query('select count(id_rass) as mm from rassilka');
$row3=fetch_array($db);
$row3['mm'];
$mm2=$row3['mm'];
$m2=create_ll($mm2,$page,glinka('rassilka.php'),$count,'5','page');
$smarty->assign('m2', $m2);
if (!isset($page))
$page=0;
$db=db_query('select count(id_rass) as mm from rassilka');
$row3=fetch_array($db);
$row3['mm'];
$mm2=$row3['mm'];
$m2=create_ll($mm2,$page,glinka('rassilka.php'),$count,'5','page');
$smarty->assign('m2', $m2);
После его выполнения создается несколько страниц, в которых должно быть по 5 строк.
Но проблема в том, что содержимое на каждой из страниц не разбивается по 5 строк.
вроде нормально написал.
Если что не понятно постараюсь лучше рассказать
Ты в native PHP можешь перевести?
Цитата: shaelf
Ты в native PHP можешь перевести?
Неа, не могу, а это как?
вот мне лично функция glinka() и create_ll() ни о чем не говорит... вот чесслово...
Цитата: Тень Пса
это так, чтобы народ видел PHP код функций, а не их применение ))))
вот мне лично функция glinka() и create_ll() ни о чем не говорит... вот чесслово...
вот мне лично функция glinka() и create_ll() ни о чем не говорит... вот чесслово...
Ну так бы и сказал))))
Код:
function glinka($str){
global $site_adr;
while (strpos($str,'/')>0){$str=substr($str,strpos($str,'/')+1,strlen($str));}
$str=$site_adr.'admin/'.$str;return $str;
}
global $site_adr;
while (strpos($str,'/')>0){$str=substr($str,strpos($str,'/')+1,strlen($str));}
$str=$site_adr.'admin/'.$str;return $str;
}
Код:
//-----------------------------------------------------------------
// CREATE_LL (Link list)
//-----------------------------------------------------------------
function create_ll($mm=0,$page=0,$linkname='',$maxp=5,$oshow=5,$pagev='page'){
if (strpos($linkname,'?')>0) $linkname.='&'; else $linkname.='?';
//$maxp=10;//on page
//$oshow=5;//group size
//--------link_list-----------------
if ($page=='all'){$tpg='all';$page='0';}else $tpg='';
$tpg='';
$stl='';
$fm=($page+1)/$maxp;
$fm=$fm/$oshow;
if (strpos($fm,'.')>0){$fm=trim(substr($fm,0,strpos($fm,'.')));}
$fm=($fm*$oshow*$maxp);
$fall=($oshow*$maxp+$fm);
$stl.= '';
if ($mm>$maxp){
$k=1;$ff=0;
$lst=($mm/$maxp);
if (strpos($lst,'.')>0){$lst=trim(substr($lst,0,strpos($lst,'.')));
$lst=($lst)*$maxp;
}else{$lst=($lst-1)*$maxp;}
$om=$fm-$maxp;
$tnm=($om/$maxp)+1;
if ($om>0){
$stl.= ' <a href="'.$linkname.$pagev.'=0">← First</a>';
$stl.= ' <a href="'.$linkname.$pagev.'='.$om.'">'.$tnm.'</a>';
}
while ($mm>0){
$mel=($k*$maxp)-1;
if (($mel>=$fm)and($ff<$fall)){
if ( (($ff==$page)or(($ff==0)and($page==0))) and ($tpg<>'all') ){$stl.= ' <strong>'.$k.'</strong>';}else
{
$stl.= ' <a href="'.$linkname.$pagev.'='.$ff.'">'.$k.'</a>';
}
}//if
$mm=$mm-$maxp;
$ff=$ff+$maxp;
$k++;
$mel++;
if (($mel==$fall)and($mel<=$lst)){
$stl.= ' <a href="'.$linkname.$pagev.'='.$ff.'">'.$k.'</a>';
$stl.= ' <a href="'.$linkname.$pagev.'='.$lst.'">Last →</a>';};
}
}else
{ $stl.= '<strong>1</strong>';}
//----------------------------------end link list------------------------------------
return $stl;
}
// CREATE_LL (Link list)
//-----------------------------------------------------------------
function create_ll($mm=0,$page=0,$linkname='',$maxp=5,$oshow=5,$pagev='page'){
if (strpos($linkname,'?')>0) $linkname.='&'; else $linkname.='?';
//$maxp=10;//on page
//$oshow=5;//group size
//--------link_list-----------------
if ($page=='all'){$tpg='all';$page='0';}else $tpg='';
$tpg='';
$stl='';
$fm=($page+1)/$maxp;
$fm=$fm/$oshow;
if (strpos($fm,'.')>0){$fm=trim(substr($fm,0,strpos($fm,'.')));}
$fm=($fm*$oshow*$maxp);
$fall=($oshow*$maxp+$fm);
$stl.= '';
if ($mm>$maxp){
$k=1;$ff=0;
$lst=($mm/$maxp);
if (strpos($lst,'.')>0){$lst=trim(substr($lst,0,strpos($lst,'.')));
$lst=($lst)*$maxp;
}else{$lst=($lst-1)*$maxp;}
$om=$fm-$maxp;
$tnm=($om/$maxp)+1;
if ($om>0){
$stl.= ' <a href="'.$linkname.$pagev.'=0">← First</a>';
$stl.= ' <a href="'.$linkname.$pagev.'='.$om.'">'.$tnm.'</a>';
}
while ($mm>0){
$mel=($k*$maxp)-1;
if (($mel>=$fm)and($ff<$fall)){
if ( (($ff==$page)or(($ff==0)and($page==0))) and ($tpg<>'all') ){$stl.= ' <strong>'.$k.'</strong>';}else
{
$stl.= ' <a href="'.$linkname.$pagev.'='.$ff.'">'.$k.'</a>';
}
}//if
$mm=$mm-$maxp;
$ff=$ff+$maxp;
$k++;
$mel++;
if (($mel==$fall)and($mel<=$lst)){
$stl.= ' <a href="'.$linkname.$pagev.'='.$ff.'">'.$k.'</a>';
$stl.= ' <a href="'.$linkname.$pagev.'='.$lst.'">Last →</a>';};
}
}else
{ $stl.= '<strong>1</strong>';}
//----------------------------------end link list------------------------------------
return $stl;
}
Ибо движок писал не я,то.... не все знаю как работает
Спасите мой мозг. Отредактируй ЭТО чтобы можно было читать нормально.
Хуже оформленного кода в жизни не видел 0= И кто так учит людей оформлять... И хоть имена переменных норм делали...
raul, ты пытаешься сжать код по количеству строчек? :eek: редактируй, а то никто тебе так и не поможет ))))) хоть табуляторами вложенность выдели.........
Цитата: raul
Но проблема в том, что содержимое на каждой из страниц не разбивается по 5 строк.
а как разбивается? и что вообще происходит? :)
Особо не вчитывался в буквы тут, но могу сказать одно: если стья большая и её надо разбить на части, то лучший способ ставить некие маркеры "разрыва страниц" руками. Только так можно быть уверенным, что не потеряется логика текста.
Цитата: Тень Пса
а как разбивается? и что вообще происходит? :)
если разбивать по 5 строк, то он делает две странички с одинаковым содержимым
а движок писал не я, просто не отредактировал, в будущем буду делать как надо
делает он не 2 странички с содержимым, а просто список ссылок на страницы.... копай туда где читаются параметры из URL при переходе, и что в этом месте происходит...
скорее всего у тебя параметр номера не обрабатывается или обрабатывается, но не правильно, и получается что ты щелкнул на 2ю страницу, а пошёл все равно на первую.