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

Форум PHP

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

 

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

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

тема: фотогалерея
 
 автор: Ксения_954   (31.08.2007 в 22:05)   письмо автору
 
 

Здравствуйте!
Я к вам снова за помощью или советом. (:
У меня есть фотогалерея, она отлично работает. Слева располагается меню - выбор категории. Категорий этих несколько. На сервере есть папка files в ней папки этих категорий. Т.е. каждой категории соответствует папка. Сейчас мне необходимо сделать две главных категории и в них рассортировать остальные.

Вот скрипт gallery.php



<?


include("config.php");

include(
"design/header.tpl");
?>
<table cellpadding=2 cellspacing=7 border=0 width=100%>
<tr>
<td valign=top colspan=2>
<?include("design/top.tpl");?></td>
</tr>
<tr>
<td valign=top width=190>
<table class=tborder cellspacing=1 cellpadding=6 border=0 width=200>
<tr>
<td class=tcat>Галереи</td>
</tr>
<tr>
<td class=alt2><a href="index.php">Главная</a></td>
</tr><?
$t
=0;
$dir_menu=opendir("./files");
while(
$folder=readdir($dir_menu))
  {
  if(
$folder!="." && $folder!=".." && filetype("./files/$folder")=="dir")
    {
    
chdir("./files/$folder");
    
#$scan_dir=opendir(".");
    
$t++;
    if(
file_exists("info.dat"))
      {
      
$file=fopen("info.dat",r);
      
$title_cat=fgets($file);
      
clearstatcache();
      }
    else 
$title_cat="$t";
    
$array_cat["$folder"]=ucfirst(trim($title_cat));
    
chdir("../../");
    }
  }

if(
count($array_cat)>0)
  {
  
asort($array_cat);
  foreach(
$array_cat as $key=>$val)
    {
    
$first=substr($val,0,1);?>
    <tr>
    <td class=alt2><?if($first!=$symbol) echo "<b>";?>
    <a href="gallery.php?cat=<?echo rawurlencode($key);?>"><?echo$val;?></a>
    <?if($first!=$symbol) echo "</b>";?></td>
    </tr><?
    $symbol
=$first;
    }
  }
?>
  

  
  
  
  
  
  
  
  
  <tr>
  <td class=alt2></td>
  </tr>
  </table></td>
  <td valign=top align=center width=90%><?
  $cat
=urldecode($cat);
  if(
file_exists("./files/$cat"))
    {
    
chdir("./files/$cat");
    
$scan_dir=opendir(".");
    while(
$scan_dir2=readdir($scan_dir))
      {
      
$arr=explode(".",$scan_dir2);
      
$end=strtolower(end($arr));
      if(
$scan_dir2!="." && $scan_dir2!=".." && in_array($end,$types)) $r++;
      }
    
$pages=ceil($r/$f);
    if(
$page=="" || $page=="0" || $page>$pages$page=1;
    if(
file_exists("info.dat"))
      {
      
$file=fopen("info.dat",r);
      
$title_cat=fgets($file);
      
clearstatcache();
      }
    else 
$title_cat="";?>
    <table class=tborder cellspacing=1 cellpadding=6 width="100%" align=center border=0>
    <tr>
      <td class=tcat colspan=<?echo$x;?>>Для просмотра объекта, выберите категорию слева. Галерея: <?echo$title_cat;?>.
      Всего фотографий: <?echo$r;?>. </td>
     </tr>
     <tr>
      <td class=alt2 colspan=<?echo$x;?> valign=middle align=center><?
      
if($page>1) echo "<a href=\"gallery.php?cat=$cat&page=".($page-1)."\"><</a>&nbsp;&nbsp;";?>
      Страницы: <?pages($r);?><?
      
if($page<$pages) echo "&nbsp;&nbsp;<a
      href=\"gallery.php?cat=
$cat&page=".($page+1)."\">></a>&nbsp;&nbsp;";?></td>
     </tr><?
    $i
=$ii=1;
    
$start=($page-1)*$f+1;
    
$end=$page*$f;
    
$dir_gal=opendir(".");
    while(
$image=readdir($dir_gal))
      {
      
$arr=explode(".",$image);
      
$ext=strtolower(end($arr));
      if(
$image!="." && $image!=".." && in_array($ext,$types) && filetype("$image")=="file")
        {
        if(
$ii>=$start && $ii<=$end)
          {
          if(
$i==1) echo "<tr>";
          
$info_img=getimagesize($image);
          echo 
"<td class=alt2 valign=middle align=center><strong>:::: $ii ::::</strong><br>
          <a href=\"full.php?cat="
.urlencode($cat)."&img=$image\" target=_blank>
          <img src=\"image.php?cat="
.urlencode($cat)."&image=$image\" border=1></a>
          <br>Название: "
.str_replace(".$end","",$image)."<br>
          <i>Размер: 
$info_img[0]x$info_img[1]</i></td>";
          if(
$i==$x) { echo "</tr>"$i=1; }
          else 
$i++;
          }
        
$ii++;
        }
      }
?>
     <tr>
      <td class=alt2 colspan=<?echo$x;?> valign=middle align=center><?
      
if($page>1) echo "<a
      href=\"gallery.php?cat=
$cat&page=".($page-1)."\"><</a>&nbsp;&nbsp;";?>
      Страницы: <?pages($r);?><?
      
if($page<$pages) echo "&nbsp;&nbsp;<a
      href=\"gallery.php?cat=
$cat&page=".($page+1)."\">></a>&nbsp;&nbsp;";?></td>
     </tr>
   </table><?
    
}
  else
    {
?>
   <table class=tborder cellspacing=1 cellpadding=6 width="100%" align=center border=0>
     <tr>
      <td class=tcat>Галерея!</td>
     </tr>
     <tr>
      <td class=alt1 align=middle><?include("design/index.tpl");?></td>
     </tr>
   </table><?
    
}?>
    </td>
  </tr>
  <tr>
   <td valign=top colspan=2>
   <table class=tborder cellspacing=1 cellpadding=6 width="100%" align=center border=0>
     <tr>
      <td class=tcat align=center><span class=smallfont>
      <a href="<?echo$site_url;?>"><?echo$site_title;?></a> </span></td>
     </tr>
   </table></td>
  </tr>
</table>
<?
include("design/footer.tpl");
?>


Заранее благодарна.

   
 
 автор: ddhvvn   (31.08.2007 в 23:45)   письмо автору
 
   для: Ксения_954   (31.08.2007 в 22:05)
 

Так а в чем Вам нужна помощь/совет?

   
 
 автор: Ксения_954   (01.09.2007 в 08:41)   письмо автору
 
   для: ddhvvn   (31.08.2007 в 23:45)
 

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

   
 
 автор: sim5   (01.09.2007 в 13:03)   письмо автору
 
   для: Ксения_954   (01.09.2007 в 08:41)
 

Вы сами писали этот код? В нем непонятно многое, где у вас определяются следующие переменные: $symbol, $cat, $types, $r, $f и т.д.. Скрипт выдает множество ошибок, или вы их у себя не наблюдаете, и это у вас прописано в config.php? Что содержит файл info.dat?

   
 
 автор: выдр   (01.09.2007 в 13:10)   письмо автору
 
   для: sim5   (01.09.2007 в 13:03)
 

знаком с этим скриптом. в info.dat хранится название для галлереи. вот отрывок из readme
1. Создайте в директории files другую директорию с любым названием
2. Загрузите туда нужные вам изображения
3. Можете на этом остановиться, но тогда ваше категория будет
называться примерно так: "Категория 5". Для присвоения категории
своего названия создайте в только что созданной директории файл
с именем info.dat и впишите туда своё название.

   
 
 автор: Ксения_954   (01.09.2007 в 13:29)   письмо автору
 
   для: sim5   (01.09.2007 в 13:03)
 

в архиве все файлы, относящиеся к фотогалереи..

   
 
 автор: выдр   (01.09.2007 в 15:18)   письмо автору
 
   для: Ксения_954   (01.09.2007 в 13:29)
 

gallery.php в архиве. теперь объясняю как делать. в info.dat пишете так:
номер_главной_категории(1 или 2)^имя_категории.
например:
1^mega_gallery

тогда будет выводиться
первая категория
mega_gallery

имена главных категорий задаются в gallery.php там найдете, хоть поиском.

   
 
 автор: Ксения_954   (01.09.2007 в 20:51)   письмо автору
 
   для: выдр   (01.09.2007 в 15:18)
 

а первая и вторая категория должна выводиться ссылками ?
у меня выводится только названия первой и второй категории. категории, которые находятся внутри не выводятся. хотя я поменяла gallery.php и изменила info.dat у категорий, которые находятся в первой и второй.

   
 
 автор: выдр   (01.09.2007 в 20:59)   письмо автору
 
   для: Ксения_954   (01.09.2007 в 20:51)
 

странно. нет, как ссылки не должны. а на info.dat можно взглянуть?

   
 
 автор: Ксения_954   (01.09.2007 в 22:34)   письмо автору
 
   для: выдр   (01.09.2007 в 20:59)
 

в папке первой категории в info.dat: готовые проекты
в папках, которые находятся в первой категории info.dat: 1^тут название папки

   
 
 автор: выдр   (02.09.2007 в 07:56)   письмо автору
14.6 Кб
 
   для: Ксения_954   (01.09.2007 в 22:34)
 

странно... посмотрите я приложил полностью все файлы галереи может заработает так

   
Rambler's Top100
вверх

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