Skocz do zawartości

Pomoc w uzupełnieniu skryptu php


Zgredek

Rekomendowane odpowiedzi

Jest to skrypt galerii jednak ja nie umiem go uzupełnić:)

I dlatego prosze o pomoc!

Jeśli ktoś chciałby się pofatygować to prosze zrobić tak by tapety pobierany były z katalogu "tapety" a miniatury "miniatury"

Plik index.php

<?

ob_start(gz_handler);

// funkcja pokazuje katalogi

function show_img_folders()

{

$dp = opendir('./');

while(false !== ($img_dir = readdir($dp)))

{

if($img_dir!='.' && $img_dir!='..')

if(is_dir($img_dir)) echo '<a href="?dir='.$img_dir.'">'.$img_dir.'</a><br />';

}

}

// funkcja pobiera obrazki z katalogu

function get_images($dir)

{

// tablica z roszerzeniami ktore bedzie obslugiwac nasza galeria

$extensions = array('jpg','jpeg');

// ladujemy obrazki

$dp = opendir($dir);

while(false !== ($image = readdir($dp)))

{

if($image != '.' && $image != '..')

{

$ext = explode('.', $image);

if(in_array(strtolower($ext[1]), $extensions)) // sprawdzamy rozszerzenie

$images[] = $image;

}

}

return $images;

}

// funkcja pobiera opisy

function get_desc($dir)

{

// otwieramy plik z opisami

$file = 'images.txt';

if(file_exists($dir.$file))

{

$dp = fopen($dir.$file, 'r');

while(!feof($dp))

{

$desc = fgets($dp); // zczytujemy linijke z opisem

$desc_exp[] = explode('|',$desc); // rozbijamy z formatu: obrazek.jpg|jakis opis

}

fclose($dp); // zamykamy plik

return $desc_exp; // zwracamy tablice

} else die('<font color="red">Stworz plik: "images.txt" w katalogu: <b>'.$dir.'</b></font>');

}

if(isset($_GET['dir'])) // sprawdzamy czy ustawiono zmienna $_GET

{

if(is_dir($_GET['dir'])) // sprawdzamy czy istnieje katalog

{

$dir = $_GET['dir'].'/'; // katalog z fotkami

$images = get_images($dir); // pobieramy do zmiennej nazwy obrazkow

$descriptions = get_desc($dir); // pobieramy do zmiennej opisy

$col = 4; // ilosc kolumn obrazkow

// sprawdzamy czy tablica zawiera jakies nazwy obrazkow

if(count($images) == 0) die('Nie znaleziono plikow graficznych');

// wyswietlamy wszystko

echo '<table align="center" style="border: 1px solid #000000"><tr><td colspan="'.$col.'"><b>'.$dir.'</b></td></tr><tr>';

foreach($images as $img)

{

echo '<td align="center"><table><tr><td valign="top" align="center"><a href="'.$dir.$img.'" target="_blank"><img src="graph.php?img_name='.$dir.$img.'" width="100" height="100" border="0"></a></td></td></tr><tr><td align="center">';

foreach($descriptions as $desc)

{

if($desc[0]==$img) echo $desc[1];

else echo ' ';

}

echo '</td></tr></table>';

$i++;

if($i==$col) // jesli $i = liczbie kolumn, tworzymy nowy wiersz

{

$i=0;

echo '</tr><tr>';

}

}

echo '</tr><tr><td colspan="'.$col.'"><a href="https://www.snipe.ekipa.be" target="_blank"><img src="logo.gif" border="0"></a></td></tr></table>';

} else echo 'Katalog nie istnieje';

} else show_img_folders(); // pokazujemy katalogi

ob_flush();

?>

Plik graph.php

<?

// File and new size

$filename = $_GET['img_name'];

$percent = 0.2;

// Content type

header('Content-type: image/jpeg');

// Get new sizes

list($width, $height) = getimagesize($filename);

$newwidth = $width * $percent;

$newheight = $height * $percent;

// Load

$thumb = imagecreatetruecolor($newwidth, $newheight);

$source = imagecreatefromjpeg($filename);

// Resize

imagecopyresized($thumb, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);

// Output

imagejpeg($thumb);

?>

Z góry dzięki:D

Odnośnik do komentarza
Udostępnij na innych stronach

do działania tego skryptu nie potrzebny ci katalog z miniaturami, wystarczy jeden. Jego nazwa przechowywana jest pod zmienna dir pobierana przez get np z formularza,albo linku do tej galerii, mozna to zastapic na stałą, skoro w gre wchodzi tylko jeden katalog.

Moje staruszki po liftingu, darmowe, zgodne z wytycznymi G, responsywne!

Katalog stron firm Zorb -/- Katalog sklepów Świat Zakupów -/- Katalog firm ProBi. PS Nie łatwo się dodać. ;)

A jeśli lubisz technologię, zwłaszcza bezzałogowce, to w wolnej chwili zajrzyj na InfoDron - info.dron.pl

Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Warunki użytkowania Polityka prywatności