Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Как сделать в галлереи выбор количества изображени ?
 
 автор: Sak[R]ed   (19.11.2006 в 07:00)   письмо автору
 
 

В галереи определен вывод изображений функцией:


$OnPage = 12; 


Как сделать чтобы пользователь мог выбрать между нескольким количеством 6,12,18,24 и всех изображениях ?

   
 
 автор: tuder   (19.11.2006 в 08:19)   письмо автору
 
   для: Sak[R]ed   (19.11.2006 в 07:00)
 

Примерно так:


<form action="" method="post">
    <table border=0>
    <tr>
    <td>Количество изображений</td>
    <td><select name="OnPage" size="1">
        <option value="6">  6 </option>
        <option value="12"> 12 </option>
        <option value="24"> 24 </option>
        <option value="0"> Все </option>
    </select></td>
    <td><input type="submit" value="Ok" name="ok"></td>
    </tr>
    </table>
</form>

   
 
 автор: Sak[R]ed   (19.11.2006 в 08:27)   письмо автору
 
   для: tuder   (19.11.2006 в 08:19)
 

спасибо

   
 
 автор: Sak[R]ed   (19.11.2006 в 11:31)   письмо автору
 
   для: Sak[R]ed   (19.11.2006 в 08:27)
 

Так не получится.

Помогите пожалуйста.

Вот скрипт галлереи:


<? 
Error_Reporting
(E_ALL & ~E_NOTICE);

function 
GetPages($url,$total,$perpage,$page,$amount=10){ 
$mpp = $perpage; $prev_page = $page - 1; $next_page = $page + 1; 
if(
$total <= $mpp) $pages = 1; 
else if(
$total % $mpp == 0) $pages = $total / $mpp; 
else 
$pages = $total / $mpp + 1; 
$pages = (int)$pages; if($pages=="") $pages = 1; 
$s_pages = ($page < $amount)? 1 : floor($page / $amount) * $amount; 
$e_pages = $page + ($amount - 1); 
if(
$e_pages > $pages) $e_pages = $pages; 
if(
$pages > $amount-1){ 
  if(
$prev_page) $s .= ' <a href="'.$url.'page='.$prev_page.'"><< Назад</a>&nbsp; '."\n"; 
  
#if($prev_page != 0) $s .= ' <b><a href="'.$url.'page=1">1</a></b> ... '."\n"; 
} 
for(
$i=$s_pages;$i<=$e_pages;$i++){ 
  if(
$i != $page) $s .= '<b><a href="'.$url.'page='.$i.'"> '.$i.'</a></b> '."\n"; 
  else if(
$i != 1) $s .= ' <b>['.$i.']</b> '; 
  else if(
$page != $pages) $s .= ' <b>[1]</b> '; 
} 
if(
$page != $pages && $pages > $amount-1){ 
  
#$s .= ' ... <b><a href="'.$url.'page='.$pages.'">'.$pages.'</a></b> '."\n"; 
  
$s .= '&nbsp; <a href="'.$url.'page='.$next_page.'">Вперед >></a> '."\n"; 
} 
if(!isset(
$s) or $s == "") $s = ' <b>[1]</b> '; 
$printPage_begin = '<TABLE CellSpacing=0 CellPadding=0 Border=0>'; 
$printPage_begin .= ' <TR>'; 
$printPage_begin .= '  <TD Align="center" Style="padding-right:5px;padding-left:5px">'; 
$printPage_begin .= '   <b>Страницы ('.$pages.') :</b> '; 
$printPage_end = '</TD></TR></TABLE>'; 
return 
$printPage_begin.$s.$printPage_end; 
} 

        function 
getDirList ($dirName) { 



                static 
$result_array=array(); 

                
$d = dir($dirName); 



                while(
$entry = $d->read()) { 

                        if (
$entry != "." && $entry != "..") { 

                                if (
is_dir($dirName."/".$entry)) { 

                                        
array_push($result_array,$entry); 

                                        
//echo $dirName."/".$entry."<br>\n"; 

                                
} 

                        } 

                } 

                
$d->close(); 



        
sort($result_array); 
                return 
$result_array; 

        } 



        function 
getDirContents ($dirName) { 



                static 
$result_array=array(); 



                
$d = dir($dirName); 



                while(
$entry = $d->read()) { 

                        if (
$entry != "." && $entry != "..") { 

                                if (!
is_dir($dirName."/".$entry)) { 
str_replace(" ", "[spc]",(str_replace("&", "[amp]",$entry))); 
                                        
array_push($result_array,$entry); 

                                } 

                        } 

                } 

                
$d->close(); 


        
sort($result_array); 
                return 
$result_array; 

        } 



        
// Load the directory tree 

                  
$DirArray = getDirList("./pictures"); 


for(
$i=0; $i < count($DirArray); $i++) { 
        if(
$dir==$DirArray[$i]) { 
                
$DirIndex = $i; 
        } 
} 


$NextDir = "showimages.php?dir=".$DirArray[$DirIndex + 1]; 
$PrevDir = "showimages.php?dir=".$DirArray[$DirIndex - 1]; 
$NextDirNam = $DirArray[($DirIndex + 1)]; 
$PrevDirNam = $DirArray[($DirIndex - 1)]; 
if (
$DirIndex == 0) { 
     
$PrevDir = "showimages.php?dir=".$DirArray[(Count($DirArray) - 1)]; 
     
$PrevDirNam = $DirArray[(Count($DirArray) - 1)]; 
} 

if ((
$DirIndex + 1) > (Count($DirArray) - 1)) { 
     
$NextDir = "showimages.php?dir=".$DirArray[0]; 
     
$NextDirNam = $DirArray[0]; 
} 
              
?></B></FONT></P><DIV ALIGN="center"></DIV><TABLE WIDTH="450" BORDER="0" CELLSPACING="2" ALIGN="CENTER"><TR BGCOLOR="#ffffff"><TD NOWRAP COLSPAN="3"><CENTER><FONT SIZE="3"><B><A HREF="index.php">на главную 
</A> / <? 
     
echo str_replace(".", " ",$dir); 

  
$Column = 1; 
  
$DirName = $DirArray[$DirIndex]; 
  
$CurrentDir = "./pictures/".$DirName; 
  
$DirContents = getDirContents($CurrentDir); 
  
$TotalImage = count($DirContents); 
  
$OnPage = 12; // Кол-во картинок на странице 
  
if (isset($_GET['page']) and $_GET['page']!='') $Page = $_GET['page']; 
  else 
$Page = 1; 

  
$To = ($Page-1)*$OnPage; 
  
$From = $OnPage*$Page-1; 
  if(
$To<=0) $To = 1; 
  if(
$From>$TotalImage) $From = $TotalImage; 
  
$Url = (isset($_GET['dir']) or $_GET['dir']!='')? 'showimages.php?dir='.$_GET['dir'].'&': 'showimages.php?'; 

?></B><br><?=GetPages($Url,$TotalImage,$OnPage,$Page,6);?></FONT></CENTER></TD></TR><TR><TD NOWRAP WIDTH="195" BGCOLOR="#ffffff"><DIV ALIGN="CENTER"><FONT SIZE="1" FACE="Arial, Helvetica, sans-serif"><B><A HREF="<?=$PrevDir?>"><? 
     
echo str_replace(".", " ",$PrevDirNam); 
?></A></B></FONT></DIV></TD><TD NOWRAP WIDTH="44">&nbsp;</TD><TD NOWRAP WIDTH="197" BGCOLOR="#ffffff"><DIV ALIGN="CENTER"><FONT  SIZE="1" FACE="Arial, Helvetica, sans-serif"><B><A HREF="<?=$NextDir?>"><? 
     
echo str_replace(".", " ",$NextDirNam); 
?></A></B></FONT></DIV></TD></TR></TABLE><P ALIGN="CENTER"><? 

                
echo "<table border=\"0\" cellspacing=\"30\" cellpadding=\"0\"><tr>"; 






                
//echo $CurrentDir; 





                
for ($i=$To-1; $i<=$From-1; $i++) { 
                
#for($i=0; $i < count($DirContents); $i++) { 

                        
echo "<td ><img  onclick=\"getCode(this.src);\" border=\"0\" src=\"".$CurrentDir."/".$DirContents[$i]."\"></td>"; 

                        if(
$Column==6) { 

                                
$Column = 0; 

                                echo 
"</tr>"; 

                        } 

                        
$Column++; 

                } 



                if(
$Column != 0) { 

                        for(
$i=$Column; $i<8;$i++){ 

                                echo 
"<td>"; 

                        } 

                } 

                echo 
"</font></table>"; 


?>

   
 
 автор: cheops   (19.11.2006 в 12:51)   письмо автору
 
   для: Sak[R]ed   (19.11.2006 в 11:31)
 

Такие здоровые бесструктурные листинги, лучше прикреплять к сообщению в виде файлов, мало найдётся желающих разбираться в огромном - не обработанном коде, но желающих выгружать каждый раз здоровую тему для ответа будет ещё меньше.

   
 
 автор: Sak[R]ed   (20.11.2006 в 15:35)   письмо автору
 
   для: cheops   (19.11.2006 в 12:51)
 

кстати при переносе на *.metroland.ru скрипт перестоёт работать, поможите ?

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования