Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> ... никак не могу решить ... несколько нюансов 
:(
    Опции темы
Onis
Дата 27.11.2005, 17:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 241
Регистрация: 18.6.2005
Где: Украина, Николаев

Репутация: нет
Всего: 3



Вообще-то я в php неплохо разбираюсь, но вот есть нюансы до которых допереть я не могу smile . что поделаешь, стыдно =)

В общем у меня есть сайт. Он полу-автоматизированный smile. Но т.к. мой халявный хост не предлагает нормальную mySQL мне пришлось делать "движок" сайту основанным на работе с файлами а не с БД. smile

Так вотс... есть скрипт, когда выбираешь галерею он у меня читает директорию с картинками и выводит на экран их в виде ссылок (1 2 3 - 10) smile
Такс, скока я не ломал голову, не могу надумать как сделать (нормлаьно) так чтоб при выборе галереи он сразу показывал первую картинку в списке. smile. И как сделать так чтоб при открытии картинки ссылка на нее горела =).

Ток не нужно говорить что я ламер там, что код не рационален там =). Я это понимаю, просто я никогда не видел рабочих скриптов для сайта по этому все алгоритмы надумывал сам. smile А пользоваться готовыми кодами я не хочу, т.к. так нечему не научусь.

Вот код который вступает в работу после выбора галлереи:
Код

<?php
    function read_photo_dir()
    {
        global $gal;
        $main_page="index.php";
        class dir_folder
    {
        var $time;
        var $name;
    }
        if($dir=dir("photo/".$gal))
        {
            $i=0;
            echo("Директория: ".$dir->path."<br>\n");
            echo("<hr width='400'><table align='center'><tr>");
            while (false!==($file=$dir->read()))
            { 
                if($file!="." && $file!="..")
                {
                    $f->time=filemtime("photo/".$gal."/".$file);
                    $f->name=$file;
                    $dir_folder[$i]=$f;
                }
                $i++;
            }
            if(isset($dir_folder))
            {
            sort($dir_folder);
                reset($dir_folder);
            $d=1;
            foreach ($dir_folder as $key)
            {
                if($d%10==0)
                        echo("<tr>");
                        echo("<td><a class='lib' href='$main_page?menu=photo.php&gal=$gal&image=$key->name'>$d</a></td>");
                        $d++;
            }
            echo("</tr></table>");
            }
        }
    }
    read_photo_dir();
    if(isset($image))
    {
        $size=getimagesize("photo/$gal/$image");
        $width=$size[0];
        if($size[0]>428)
            $width=428;
    
        
        $main_page="index.php";
        
        if(isset($image))
            echo("<center><a href='photo/$gal/$image' target='_blank'><img width='$width' src='scripts/thumb.php?id=../photo/$gal/$image' border='0'></a></center>");
                echo("<hr width='400'>");
    }
    
    if(file_exists("biography/".$gal.".shtml"))
    {
        echo("<table align='center' width='80%'><tr><td>");
        include("biography/".$gal.".shtml");
        echo("</tr></td></table>");
    }echo("<hr width='400'>");
?>

Вот он в действии.

Если кто-то мне поможет.... то я БУДУ очень блпгодарен =).

Я вообщето на сайт забил, но друзя которым я отдал на него пассы зудят мне чтоб я исправил некоторые недоделки... одни исправляю с другими к вам иду (:

Это сообщение отредактировал(а) Onis - 27.11.2005, 18:33
PM MAIL   Вверх
Mal Hack
Дата 27.11.2005, 18:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



Цитата(Onis @ 27.11.2005, 17:31)
так чтоб при выборе галереи он сразу показывал первую картинку в списке.

Код
while (false!==($file=$dir->read())) // тут я создаю объект для кратинки. Заполняю имя и дату. И загоняю объет в массив $dir_folder

Вот тут тебе надо Выполнить цикл 1 раз для показа первой картинки.

ЗЫ: http://php.net/glob, глянь, авось пригодиться smile

Цитата(Onis @ 27.11.2005, 17:31)
И как сделать так чтоб при открытии картинки ссылка на нее горела =).

Алгоритм такой.
Читаем в массив $a (индексный) имена файлов картинки, которые у нас есть.
Когда ты выводишь ссылку на картинку проверяй, если $a[i] = $_GET['image'] то потсвечивай, else - вывод, как обычно.
PM ICQ   Вверх
Onis
Дата 27.11.2005, 18:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 241
Регистрация: 18.6.2005
Где: Украина, Николаев

Репутация: нет
Всего: 3



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

А вообще как вам мой код?

smile

Это сообщение отредактировал(а) Onis - 27.11.2005, 18:28
PM MAIL   Вверх
Mal Hack
Дата 27.11.2005, 18:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



Цитата(Onis @ 27.11.2005, 18:23)
Я имел в виду чтоб при открытии непремер той галлереи, выводилось и ссылки на все картинки и сразу открывалась первая кртинка из всего списка.

Я про это и говорю.
Ты должен считать список картинок из галлереи и отсортировать его, и вывести первую картинку.

Цитата(Onis @ 27.11.2005, 18:23)
А вообще как вам мой код?

НУ, жить можно smile
PM ICQ   Вверх
Onis
Дата 27.11.2005, 18:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 241
Регистрация: 18.6.2005
Где: Украина, Николаев

Репутация: нет
Всего: 3



Ой ой.... извините, код не совсем тот! =((

*отредактировал*

Токс... там теперь без комментов =)

Это сообщение отредактировал(а) Onis - 27.11.2005, 18:33
PM MAIL   Вверх
Onis
Дата 27.11.2005, 19:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 241
Регистрация: 18.6.2005
Где: Украина, Николаев

Репутация: нет
Всего: 3



Всё получилось. огромное пасибо =)
PM MAIL   Вверх
Mal Hack
Дата 27.11.2005, 20:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



Не за что, заходите чаще smile
PM ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0471 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.