|
|
|
| Помогите разабраться как сделать из этого то что мне нужно (оно выводит переход по страницам если кол-во фото превышает $ppp, на странице маленькие фото с ссылкой на большие)
FUNCTION page($curr, $all, $url, $urlbegining, $urlend){
$numpag=(int)($all);
if ($numpag<$all) $numpag++;
if ($numpag==0) $numpag=1;
$currp=(int)($curr);
foreach($_GET as $n => $v)
$res="[<<<][";
if ($curr<=1) $res="[<<<]["; else $res="[<a href=".$urlbegining.$url."=" .($currp-1).$urlend."><<<</a>][";
if ($numpag<=14)
for ($i=1;$i<=$numpag;$i++)
if ($i<=$curr && $i>=$curr) $res.="<b><font size=2>" .$i."</font></b> |"; else $res.="<a href=".$urlbegining.$url."=".$i.$urlend.">".$i."</a> |";
else {
$showpag=14;
$st=$currp-6;
if ($st<1) {$st=1;}
if ($st>1) {
$res.=" <a href=".$urlbegining.$url."=1".$urlend."> 1..</a> |";
$showpag-=2;
}
if ($st+$showpag>$numpag) $st=$numpag-$showpag;
for ($i=$st;$i<=$st+$showpag;$i++)
if ($i<=$curr && $i>=$curr) $res.="<b> ".$i."</b> |"; else $res.=" <a href=".$urlbegining.$url."=".$i.$urlend.">".$i."</a> |";
if ($st<($numpag-$showpag)) $res.=" <a href=".$urlbegining.$url."=".$numpag.$urlend.">..$numpag</a> |";
}
$res=substr($res,0,strlen($res)-1);
if ($curr>=($all+1)) $res.=" ][>>>]"; else $res.=" ][<a href=".$urlbegining.$url."=".($currp+1).$urlend.">>>></a>]";
return $res;
}
$gfile = file("files/gallery.set");
for($o=0;$o<count($gfile);$o++) {
$v = explode("<>",$gfile[$o]);
if ($v[0] == $ide && file_exists("gallery/thumb_small/".$v[1])) { $gl[] = $gfile[$o]; }
}
if (!isset($page)){$page = "1";}else{$page = $page;}
$count = count($gl);
$pages = ceil($count/$ppp);
if ($count > $ppp) {
$com_nav = page($page, $pages, "&page", "?set=gallery&mc=category&ide=$ide" , "");
$text.= "<center>".$com_nav."</center>";
}
|
Мне нужно сделать чтобы при просмотре большой фотографии сверху был переход на другие фото, и не надо возвращаться обратно к маленьким чтобы выбирать
gallery.set выглядит так
1<>2<>3<>4<>
1 - номер категории
2 - имя файла.jpg(gif)
3 - название
4 - номер фото
на каждое фото своя строчка
большие фото в папке gallery / thumb_big, ссылка на фото выглядит так ?set=gallery&mc=view&ide=$ide&pg=$page&pict=$pict
Попробовал, что то получаеться, но выводит ссылки на все фото а они у меня в разных категориях, и мне надо чтобы в каждой категории выводились фотографии только этой категории | |
|
|
|
|
|
|
|
для: Коляка
(14.12.2005 в 13:23)
| | Может кто поможет, а? Сам не разберусь . плиз | |
|
|
|
|
|
|
|
для: Коляка
(15.12.2005 в 12:34)
| | Я если честно чего-то не очень понял вопрос... | |
|
|
|
|
|
|
|
для: cheops
(15.12.2005 в 13:30)
| | В галерее есть категории, в каждой категории есть фото прикрепленные к номеру этой кактегории, когда входишь в кат. то на экране маленькие фото( кол-во которых на странице равное $ppp ), при нажатии на них переходишь на большое фото с комментами к ним, и чтобы выбрать для просмотра другое фото надо вернуться на страницу с маленькими, а мне надо чтоб на странице с большим фото над ним были ссылки что то вроде <<< 1 | 2 | 3 | 4 >>>, на другие большие фото. Тот скрипт который в первом посте работает тогда когда кол-во фото в базе (файловая база) больше $ppp, он выводит на странице с маленькими фото ссылки на другие страницы со следующими маленькими фото, вот я и прошу помочь разобраться может можно этот скрипт переделать в то что мне надо, или какие нибудь может другие варианты есть ... | |
|
|
|
|
|
|
|
для: Коляка
(15.12.2005 в 17:32)
| | В самом грубом приближении можно сделать две копии этого скрипта - в одном будут выводится большие картинки, в другом маленькие. И пусть они ссылаются друг на друга. | |
|
|
|
|
|
|
|
для: cheops
(15.12.2005 в 23:33)
| | >В самом грубом приближении можно сделать две копии этого
>скрипта - в одном будут выводится большие картинки, в другом
>маленькие. И пусть они ссылаются друг на друга.
Я немного не понял ( учусь ещё) и сделал так: скопировал этот скрипт, поменял его немного, задал $ppp=1, направил в этот же файл gallery.set, он выдал ссылки на все фото <<< 1 | 2 | 3 ... 54 | 55 >>> а как сделать так как вы сказали , не обязательно за меня делать ( выкладывать готовый скрипт ) просто обьясните немного на пользовательском уровне, а я сам попробую сделать ... | |
|
|
|
|
|
|
|
для: Коляка
(16.12.2005 в 00:42)
| | Вы формирует строку с построничной навигацией при помощи строки
<?php
page($page, $pages, "&page", "?set=gallery&mc=category&ide=$ide" , "");
?>
|
на странице с большими фотографиями, вам просто потребуется передать адрес страницы с большими фотографиями
<?php
page($page, $pages, "&page", "bigphoto.php?set=gallery&mc=category&ide=$ide" , "");
?>
|
и для симметри для маленьких фотографий
<?php
page($page, $pages, "&page", "smallphoto.php?set=gallery&mc=category&ide=$ide" , "");
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(16.12.2005 в 14:03)
| | Дело в том, что у меня сайт на SET-cms. а там все ссылки на блоки и модули идут со страницы index.php, например на новости : index.php?set=news, (где news - папка, в ней свой index.php) если делать какие то переходы по новостям, то просто добавляется к ссылке : index.php?set=news&mc=readfull&do=3 , и если добавлять страницы smallphoto.php и bigphoto.php, то там надо много переделывать (не осилю) я вам скину адрес сайта на е-майл, посмотрите если не сложно ... | |
|
|
|
|
|
|
|
для: Коляка
(16.12.2005 в 16:31)
| | А как различаются адреса страниц с большой и маленькой фотографией? | |
|
|
|
|
|
|
|
для: cheops
(17.12.2005 в 00:41)
| | Каждая фотография имеет свой номер в galery.set
gallery.set выглядит так
1<>2<>3<>4<>
1 - номер категории
2 - имя файла.jpg(gif)
3 - название
4 - номер фото
фото хранится в 2 - х папках : thumb_small и thumb_big, как я понимаю из galery.set делается массив, и выводятся маленькие фото с ссылкой на большие
$gfile = file("files/gallery.set");
for($o=0;$o<count($gfile);$o++) {
$v = explode("<>",$gfile[$o]);
if ($v[0] == $ide && file_exists("gallery/thumb_small/".$v[1])) { $gl[] = $gfile[$o]; }
}
if (!isset($page)){$page = "1";}else{$page = $page;}
$count = count($gl);
$pages = ceil($count/$ppp);
if ($count > $ppp) {
$com_nav = page($page, $pages, "&page", "?set=gallery&mc=category&ide=$ide" , "");
$text.= "<center>".$com_nav."</center>";
---тутт еще голосования по фото идет ---
$text.= "<td class=galnosel onclick=\"location='?set=gallery&mc=view&ide=$ide&pg=$page&pict=".$q[3]."'\" onmouseover=\"this.className='galsel';showWMTT('$i');\" onmouseout=\"this.className='galnosel';hideWMTT();\" valign=top width=30% height=150 align=center>
<div ><img border=1 src=gallery/thumb_small/".$q[1]."></div>
---тут про количество комментариев ---
if ($mc == "view" && isset($pict))
{
if (!isset($page)){$page = "1";}else{$page = $page;}
$gl = file("files/gallery.set");
for($i=0;$i<count($gl);$i++)
{
$z = explode("<>", $gl[$i]);
if($z[3] == $pict) { $pic[] = $gl[$i]; }
}
for($a=0;$a<count($pic);$a++){ $q = explode("<>", $pic[$a]); }
$text.= "<center><a href='javascript:history.back();'>Назад</a></center><hr>";
$text.= "<center><img src=gallery/thumb_big/".$q[1]."></center>";
|
По моему это то про что вы спрашивали, я могу закинуть весь скрипт если надо | |
|
|
|
|
|
|
|
для: Коляка
(17.12.2005 в 02:14)
| | Не очень понятно как выводятся большие фото... я так понимаю это начинается с блока
<?php
if ($mc == "view" && isset($pict))
?>
|
Откуда берутся параметры $mc и $pict что они обозначают? | |
|
|
|
|
|
|
|
для: cheops
(17.12.2005 в 13:21)
| | Да с этого начинается
$mc = $_GET['mc']; находиться в index (главный индекс),откуда берется 'mc' не могу понять, означает действие например переход в категории $mc == category, просмотр фото $mc == view .... и все это находиться в одном файле разбито на блоки... так начинается один из них ...
<?php
if ($mc == "view" && isset($pict))
?>
|
$pict = $_GET['pict']; находится в главном файле галереи index,откуда берется 'pict' тоже не знаю, означает по моему имя фото ( ya.jpg ... ) | |
|
|
|
|
|
|
|
для: Коляка
(14.12.2005 в 13:23)
| | Тему можно закрывать ... Спасибо ... | |
|
|
|