Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Mala prepravka ove galerije, moze pomoc

[es] :: PHP :: Mala prepravka ove galerije, moze pomoc

[ Pregleda: 3435 | Odgovora: 18 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

dragan.zm
Doboj

Član broj: 87035
Poruke: 94
195.222.54.*



Profil

icon Mala prepravka ove galerije, moze pomoc06.03.2006. u 10:50 - pre 219 meseci
Zdravo svima ja sam novi clan, mozete li mi pomoci oko ove galerije.
Hteo bi da mi slike cita iz foldera (to i radi) al da mi uvjek budu prve one koje sam zadnje stavio na server i da klikom otvara novi prozor. Te ako je moguce tam gdje pise Martch bude brojem mjesec koji je u godini.

 
Odgovor na temu

dragan.zm
Doboj

Član broj: 87035
Poruke: 94
195.222.54.*



Profil

icon Re: Mala prepravka ove galerije, moze pomoc06.03.2006. u 10:51 - pre 219 meseci
Code:


<?php

$limit = 8;            // number of thumbs to show per page.
$w = 80;              // max width of thumbnails.
$h = 59;              // max height of thumbnails.
$show_folders = 1;     // Set to 1 to show folder list, 0 to turn off
$isize = 1;            // Set to 1 to display image filesize
$idim = 1;             // Set to 1 to display image dimensions
$show_name = 1;        // Set to 1 to show image name
$hide_extension = 0;   // Set to 1 to hide image extensions from name (jpg, gif, png)

//============================================
// No further options below here.

if($pg = $_GET['pg'])
{
  $thumb = (($pg-1)*$limit);
  $i = $thumb;
}
//if($thumb = $_GET['thumb'])
//  $i = $thumb;
else
  $i = 0;

// get the directory name
$dirlist = dirname($_SERVER['SCRIPT_NAME']);

// split it up
$subdir = explode("/", $dirlist);

// reverse it so directory above images is listed
$subdir = array_reverse($subdir);

// page title name is root dir.
$title = str_replace("_", " ", $subdir['0']);

//$my_uri = "http://" . $_SERVER['HTTP_HOST'] . $HTTP_SERVER_VARS["SCRIPT_NAME"];

if(ereg("\.\.", $_GET['d']))
  header ("Location: ?");


?>
<html>
<head>
<title>Foto galerija- <? echo $title; ?></title>
<style type="text/css">

body {background-color: #383F47; text-align: center; font-family: verdana; font-size: 12px; color: #000;}
h1 {font-size: 16px; margin: 1em; }

#dirnav {height: 16px; position: relative; margin: auto auto 5px auto; clear: both;  border-bottom: 1px solid #aaa; text-align: center; padding: 3px; }
#dirnav ul, #dirnav li {margin: auto; padding: 0; list-style-type: none; }
#dirnav li {float: left; text-align: center;  }
#dirnav a {display: block; padding: 2px 5px 2px 5px; }

#thumbs {width: 100%; margin: 10px; border: 1px solid black; clear: both; text-align: center; }
p.thumb {width: <? echo $w+18; ?>px; height: <? echo $h+32; ?>px; margin: 1em; padding: 3px; float: left; font-size: 12px; text-align: center; background-color: #53585D}

#nav {position: relative; margin: auto; clear: both;  border-top: 1px solid #aaa; text-align: center; }
#nav ul, #nav li {margin: auto; padding: 0; list-style-type: none; }
#nav li {float: left; text-align: center;  }
#nav li.current a.page {font-weight: bold; color: #ddd; }
#nav a {}
#nav a.page {display: block; padding: 2px 5px 2px 5px; }
#nav a.prev, #nav a.next, #nav .prev, #nav .next {display: block; width: 65px; padding: 2px 5px 2px 5px; }
#nav a:hover { }

a {color: #999; text-decoration: none; }
a:hover, a:active {color: #d0d0d0; }
a img {border: 1px solid #777; }
a:hover img {border: 1px solid #d0d0d0; }
a.page {color: #999; }

</style>

</head>

<body>

<?
//-------------------------------- Directory Navigation -----------------------------
function dir_list($dir)
{
  global $title;
  $dlist = array();

  if ($hdir = opendir('./'.$dir))
  {
    while ($obj = readdir($hdir))
      {
        if (((preg_match("/^\./",$obj)==0) && (!eregi('^(.*).[php]$', $obj))) && is_dir($dir.$obj))
        //if(is_dir($dir.$obj))
          $dlist[] = $obj;
      }
    closedir($hdir);
  }
  else
    die('Nemoguce izlistat fajlove iz direktorija ' . $dir);

  asort($dlist);
  echo "<div id='dirnav'><ul>\n<li>Folderi:</li>\n";

  echo "<li> <a href='?'>$title &raquo; </a></li>\n";
    $dirtree = explode("/", $_GET['d']); // parse directory tree from passed "d"
  if(!$_GET['d'])
    array_shift($dirtree); // remove redundant "." directory from tree
    foreach ($dirtree as $dirsub)
    {
        echo "<li> <a href='?d=$dirparent$dirsub'>$dirsub &raquo; </a></li>\n";
        $dirparent .= $dirsub.'/';
    }

  foreach ($dlist as $link)
  {
    echo "<li><a href='?d=$dir$link'>[$link]</a></li>\n";
  }
  echo "</ul>\n</div>\n";
}



//-------------------------------------Get image file size ----------------------------------
function getfilesize($size)
{
  $units = array(' B', ' KB', ' MB', ' GB', ' TB');
  for ($i = 0; $size > 1024; $i++) { $size /= 1024; }
  return round($size, 2).$units[$i];
}



//-------------------------------------Set which folder we are viewing----------------



if($_GET['d'])
{
  $d = $_GET['d'].'/';
  $dd = 'd='.$_GET['d'].'&'; // for use in passing to URL strings
  $current_dir .= $d;
}

 opendir($current_dir);

if ($show_folders)
  dir_list($current_dir);



//--------------------------------------- Create list of Images ------------------------
$list = array();

if ($dir = opendir('./'.$current_dir))
{
  while ($file = readdir($dir))
  {
      //if((is_file($file)) && ((!eregi('^(.*).[php]$', $file)) && (!eregi('^(\.htaccess)$', $file))))

      // find all JPG, PNG or GIF images
      if (eregi('^(.+\.(((j|J)(p|P)(g|G))|((g|G)(i|I)(f|F))|((p|P)(n|N)(g|G))))$', $file))
        $list[] = $file;
  }
    closedir($dir);
}

asort($list); // sort alpha
$numtotal = count($list); //total number of thumbs

if ($thumb)
{
  $s = 0;
  while($s < $thumb)
  {
    array_shift($list);
    $s++;
  }
}

$numremain = count($list); // total remaining thumbs



//-------------------------------------- Create Thumbnails and Gallery ------------------
foreach ($list as $pic)
{
       $fp = $current_dir.$pic;
       if($i < $thumb+$limit)
       {
      //echo "<p class='thumb'><tt><a href='$current_dir$pic'><img src='tn/$pic' alt='$pic' /><br />$pic</a> - [".getfilesize(filesize($fp))."]</tt></p>\n";
      $image = $currentdir.$pic;
      $i_size = getfilesize(filesize($fp));
      $i_area = getimagesize($fp);
      $i_width = $i_area[0];
      $i_height = $i_area[1];
      //$i_mtime = date("d F Y ", filemtime($fp));

      if ($hide_extension)
        $extensions = array(".jpg", ".JPG", ".gif", ".GIF", ".png", ".PNG");
      if ($show_name)
       $name = str_replace($extensions, '', $pic);
      echo "<p class='thumb'>
                  <tt>
                      <a href='$current_dir$pic'><img src='image_resize.php?i=$d$pic&w=$w&h=$h' alt='$pic' /><br />
                      $name<br /></a>\n";
        if($idim)
          echo "            [$i_width x $i_height]";
          echo "<br>";
          echo  date("d F Y", filemtime($pic));
          echo "<br>";
        if($idim && $isize)
            echo " - ";
        if ($isize)
            echo "            [$i_size]";
      echo "        <br />
                  </tt>
              </p>\n";
      $i++;
    }
}




//---------------------------------------Page Navigation -----------------------------
$page = 0;
if(!$pg)
  $pg = 1;
echo "<div id='nav'>\n<ul>\n";

if($thumb > 0)
  echo "<li><a class='prev' href='?".$dd."pg=".($pg-1)."'>&laquo; Prev $limit</a></li>\n";
else
  echo "<li><div class='prev'>&laquo; Prev $limit</div></li>";

while($page*$limit < $numtotal)
{
  $page ++;
  unset($cur);
  if($page == $pg)
  {
    $cur = ' class="current"';
  }
  echo "<li$cur><a class='page' href='?".$dd."pg=$page'>[".($page)."]</a></li>\n";
}

if($numremain > $limit)
  echo "<li><a class='next' href='?".$dd."pg=".($pg+1)."'>Next $limit &raquo;</a></li>\n";
else
  echo "<li><div class='next'>Next $limit &raquo;</div></li>\n";


?>

</body>
</html>

 
Odgovor na temu

Nemanja Avramović
Engineering Manager
MENU Technologies
Beograd, Srbija

Moderator
Član broj: 32202
Poruke: 4391
195.252.99.*

Sajt: https://avramovic.info


+46 Profil

icon Re: Mala prepravka ove galerije, moze pomoc06.03.2006. u 18:51 - pre 219 meseci
E mrzi me da prepravljam galeriju ali evo ti nesto sto sam ja pravio. Ovo cita slike sa diska i smeshta ih u bazu (samo zato da bi najnovije bile poslednje [na prvoj strani]). Imas folder ./slike/ i tu ubacujes velike slike a u ./slike/thumbs/ ubacujes male slike. Slike uploadujes preko FTP-a ili kako hoces ali nema web upload-a i GD-a i slicnih stvarcica (galerija je pravljena za odredjeni sajt).
Kada uploadujes nove slike ili obrises neku moras da pozoves ./admin/gal_resync.php
Moras da podesis sledeca dva fajla:

- gal_connection.php
Code:

//folder with images [files]
$picdir = "./slike/"; //start with ./ and include backslash at the end!!!

//MySQL data [table]
$pics = "slike";

//MySQL data [connection]
$dbname = "razno";
$dbhost = "localhost";
$dbuser = "root";
$dbpass = "";


- gal_index.php
Code:

// Broj ispisa po strani
$per_page = 9; // koliko slika po strani
$perrow = 3; //koliko slika u redu


Samo to podesis, kreiras tabelu iz tables.sql, uploadujes slike (i ove fajlove), pozoves gal_resync.php iz admin foldera i eto ti galerije.

Srecno i vichi ako negde zapne
Laravel Srbija.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
Prikačeni fajlovi
 
Odgovor na temu

dragan.zm
Doboj

Član broj: 87035
Poruke: 94
195.222.54.*



Profil

icon Re: Mala prepravka ove galerije, moze pomoc08.03.2006. u 07:47 - pre 219 meseci
Hvala Drug, radi galerija extra. Mislim da kad bi se dodala mogucnost da sam kreira thumbse bila bi jedna od najjednostavnijih i boljih galerija.

Volim ovako jednostavan kod.
 
Odgovor na temu

SmilieBG
Aleksandar Skodric
NL

Član broj: 13094
Poruke: 1821
*.speed.planet.nl.



+3 Profil

icon Re: Mala prepravka ove galerije, moze pomoc08.03.2006. u 08:49 - pre 219 meseci
pogledaj prvu stranicu PHP foruma, vec je bilo reci o kreiranju thumbnaila ;)

Poz,
Sale
=========
Uporedi cene i karakteristike za vise od 10.000 proizvoda, izmedju ostalog:
Digitalni foto-aparati
Mobilni telefoni
Skolski pribor
=========
 
Odgovor na temu

migel
Beograd

Član broj: 81233
Poruke: 12
*.beotel.net.



Profil

icon Re: Mala prepravka ove galerije, moze pomoc08.03.2006. u 12:17 - pre 219 meseci
Evo ti code za kreiranje thumbnail-a, samo prepravi "gal_index.php".

Code:
/*kreiranje thumbnaila*/
/*     pocetak        */

//dobijanje dimenzija slike i ucitavanje rezultata u niz
$mythumb = getimagesize("slike/".$filename);


function imageResize($width, $height, $target) { 

//funkcija za promenu dimenzije slike  

if ($width > $height) { 
$percentage = ($target / $width); 
} else { 
$percentage = ($target / $height); 


//dobijanje nove velicine slike i zaokruzivanje rezultata
$width = round($width * $percentage); 
$height = round($height * $percentage); 

//vracanje nove velicine u html image tag formatu... 

return "width=\"$width\" height=\"$height\""; 



$nova_velicina = imageResize($mythumb[0], $mythumb[1], 150);//nova velicina slike

echo "<td valign='center' align='center'><a href='".$picdir . $filename."' title='$name' target='_blank'>
<img src='slike/$filename'  border='0' $nova_velicina alt='$name'><br />$name</a></td> ";//prikazivanje slike...

/*kreiranje thumbnaila*/
/*        kraj        */


[Ovu poruku je menjao migel dana 08.03.2006. u 13:48 GMT+1]
 
Odgovor na temu

Nemanja Avramović
Engineering Manager
MENU Technologies
Beograd, Srbija

Moderator
Član broj: 32202
Poruke: 4391
195.252.99.*

Sajt: https://avramovic.info


+46 Profil

icon Re: Mala prepravka ove galerije, moze pomoc08.03.2006. u 15:48 - pre 219 meseci
Pa koliko sam skontao ovo samo stavlja width i height atribute a ne resize-uje sliku (kao fajl). Sajt za koji sam pravio galeriju nema GD tako da nisam radio automatsko pravljenje thumbs-a... inace to nije problem da se uradi
Laravel Srbija.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
 
Odgovor na temu

migel
Beograd

Član broj: 81233
Poruke: 12
*.ptt.yu.



Profil

icon Re: Mala prepravka ove galerije, moze pomoc08.03.2006. u 20:23 - pre 219 meseci
Citat:
JaHvram: Pa koliko sam skontao ovo samo stavlja width i height atribute a ne resize-uje sliku (kao fajl). Sajt za koji sam pravio galeriju nema GD tako da nisam radio automatsko pravljenje thumbs-a... inace to nije problem da se uradi ;)


U pravu si. Moja greska. Skript od malopre nece smanjiti velicinu fajla vec samo dimenzije slike na browser-u. Evo pravog koda. Ovaj skript podesava velicinu slike kao fajla. To radi pomocu funkcije ImageCopyResized.

Treba da se napravi »resize_image.php« i u njega upise sledeci kod:
Code:

<?php

$image = $HTTP_GET_VARS['image'];

if (!$max_width)
  $max_width = 100;
if (!$max_height)
  $max_height = 80;

$size = GetImageSize($image);
$width = $size[0];
$height = $size[1];

$x_ratio = $max_width / $width;
$y_ratio = $max_height / $height;

if ( ($width <= $max_width) && ($height <= $max_height) ) {
  $tn_width = $width;
  $tn_height = $height;
}
else if (($x_ratio * $height) < $max_height) {
  $tn_height = ceil($x_ratio * $height);
  $tn_width = $max_width;
}
else {
  $tn_width = ceil($y_ratio * $width);
  $tn_height = $max_height;
}

$src = ImageCreateFromJpeg($image);
$dst = ImageCreate($tn_width,$tn_height);
ImageCopyResized($dst, $src, 0, 0, 0, 0,
    $tn_width,$tn_height,$width,$height);
header('Content-type: image/jpeg');
ImageJpeg($dst, null, -1);
ImageDestroy($src);
ImageDestroy($dst);

?>

U fajlu »gal_index.php« treba da se zameni sledeci deo koda:
Umesto ovoga
Code:

echo "<td valign='center' align='center'>
<a href='".$picdir . $filename."' title='$name' target='_blank'>
<img src='".$picdir ."thumbs/". $filename."' 
border='0' width='300' height='200' alt='$name'>
<br />$name</a></td> ";

Treba ubaciti
Code:

echo "<td valign='center' align='center'>
<a href='".$picdir . $filename."' title='$name' target='_blank'>
<img src='resize_image.php?image=slike/$filename' 
border='0'  alt='$name'>
<br />$name</a></td> ";


To je sve. Sad bi trebalo da bude OK.
Pozdrav
 
Odgovor na temu

Nemanja Avramović
Engineering Manager
MENU Technologies
Beograd, Srbija

Moderator
Član broj: 32202
Poruke: 4391
195.252.99.*

Sajt: https://avramovic.info


+46 Profil

icon Re: Mala prepravka ove galerije, moze pomoc08.03.2006. u 22:20 - pre 219 meseci
koristi ImageCopyResampled... i nek se fajl zove gal_resize.php - da bude u stilu

[Ovu poruku je menjao JaHvram dana 08.03.2006. u 23:26 GMT+1]
Laravel Srbija.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
 
Odgovor na temu

dragan.zm
Doboj

Član broj: 87035
Poruke: 94
195.222.54.*



Profil

icon Re: Mala prepravka ove galerije, moze pomoc11.03.2006. u 22:01 - pre 219 meseci
Hvala Vam puno, ali imam bed jedan. Obrisao sam mysql bazu a izgubio sam upit sto sma imao, moze li mi neko napraviti mysql upit koji ce mi napraviti bazu.

HVALA
 
Odgovor na temu

Nemanja Avramović
Engineering Manager
MENU Technologies
Beograd, Srbija

Moderator
Član broj: 32202
Poruke: 4391
195.252.99.*

Sajt: https://avramovic.info


+46 Profil

icon Re: Mala prepravka ove galerije, moze pomoc11.03.2006. u 22:18 - pre 219 meseci
Pa baze pravis sa CREATE DATABASE 'ime_baze';

hehe... a tabela za moju galeriju:
Code:
CREATE TABLE `slike` (
`id` INT NOT NULL AUTO_INCREMENT ,
`filename` TEXT NOT NULL ,
`md5` TEXT NOT NULL ,
PRIMARY KEY ( `id` )
);

Laravel Srbija.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
 
Odgovor na temu

dragan.zm
Doboj

Član broj: 87035
Poruke: 94
195.222.54.*



Profil

icon Re: Mala prepravka ove galerije, moze pomoc16.03.2006. u 11:23 - pre 219 meseci
Zasto mi neke slike izgledaju skrpz lose, jedva se vidi dobiju neku prljavu pepelastu boju kad se thmb sam pravi.
 
Odgovor na temu

migel
Beograd

Član broj: 81233
Poruke: 12
*.beotel.net.



Profil

icon Re: Mala prepravka ove galerije, moze pomoc16.03.2006. u 12:42 - pre 219 meseci
Citat:
dragan.zm: Zasto mi neke slike izgledaju skrpz lose, jedva se vidi dobiju neku prljavu pepelastu boju kad se thmb sam pravi.


Zameni sledece:
Code:
$dst = ImageCreate($tn_width,$tn_height);

Sa ovim:
Code:
$dst = ImageCreateTrueColor($tn_width,$tn_height);
 
Odgovor na temu

dragan.zm
Doboj

Član broj: 87035
Poruke: 94
195.222.54.*



Profil

icon Re: Mala prepravka ove galerije, moze pomoc16.03.2006. u 22:44 - pre 219 meseci
Hvala puno, probao sam da napravim da mi se slike otvaraju u popup prozoru ali je problem taj u java kodu imaju ' znakovi , tako da kad one ispred " prepravim na ' i ovi drugi ostanu i nece da radi, kako vi to rijesavate.
 
Odgovor na temu

dragan.zm
Doboj

Član broj: 87035
Poruke: 94
*.rb.b.2-3.23.bih.net.ba.



Profil

icon Re: Mala prepravka ove galerije, moze pomoc19.03.2006. u 20:01 - pre 219 meseci
Molim vas jel ima ko da pomogne da mi se otvaraju slike u popupu ev vec 5 dana pokusavam to uraditi i nece.
 
Odgovor na temu

Nemanja Avramović
Engineering Manager
MENU Technologies
Beograd, Srbija

Moderator
Član broj: 32202
Poruke: 4391
195.252.99.*

Sajt: https://avramovic.info


+46 Profil

icon Re: Mala prepravka ove galerije, moze pomoc20.03.2006. u 11:31 - pre 219 meseci
Pa najlakse je da ovo:

Code:
echo "<td valign='center' align='center'>
<a href='".$picdir . $filename."' title='$name' target='_blank'>
<img src='resize_image.php?image=slike/$filename' 
border='0'  alt='$name'>
<br />$name</a></td> ";


zamenis sa:

Code:
echo "<td valign='center' align='center'>
<a target='_blank' href='".$picdir . $filename."' title='$name' target='_blank'>
<img src='resize_image.php?image=slike/$filename' 
border='0'  alt='$name'>
<br />$name</a></td> ";


...i to ce otvarati u novom prozoru. A za popup ces morati preko javascripta sa window.open...
Laravel Srbija.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
 
Odgovor na temu

dragan.zm
Doboj

Član broj: 87035
Poruke: 94
195.222.54.*



Profil

icon Re: Mala prepravka ove galerije, moze pomoc21.03.2006. u 09:21 - pre 219 meseci
Ma znam to, al bas sam zapeo, fora je da u kodu imam:

<a href="#" onClick="poptastic('http://www.google.com'); return false;">Otvori popup</a>


e sad ako stavim ovo na vrh iznad php koda radi, ako stavim u kod neradi skripta vise jer sadrzi " znakove, ako zamjenim " sa ' onda bi to bilo ok da ti isti znak nema između google.com , pa zar niko nema da to uradi to je minuta posla ko je vec radio s tim.
 
Odgovor na temu

Nemanja Avramović
Engineering Manager
MENU Technologies
Beograd, Srbija

Moderator
Član broj: 32202
Poruke: 4391
195.252.99.*

Sajt: https://avramovic.info


+46 Profil

icon Re: Mala prepravka ove galerije, moze pomoc21.03.2006. u 19:09 - pre 219 meseci
Pa da sam radio sa tim i da znam napamet kako da ti pomognem rekao bih ti, ali zaista ne znam a trenutno nemam vremena da isprobavam. Da li si probao sa \' i/ili \" - mozda uspe...
Laravel Srbija.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
 
Odgovor na temu

migel
Beograd

Član broj: 81233
Poruke: 12
*.beotel.net.



Profil

icon Re: Mala prepravka ove galerije, moze pomoc22.03.2006. u 11:35 - pre 219 meseci
Ubaci Javascript funciju:
Code:

<script>
<!--
        
  function PopOpen(ime) 
  {
        
    prozor = window.open (ime, 'Slika', 
            'height=400,width=500,location=no,menubar=no,resizable=no,status=no,toolbar=no,scrollbars=yes');
  } 

//-->
</script>


i promeni gal_index.php:
Code:

$href= $picdir . $filename;
echo "<td valign='center' align='center'>
<a href= \"javascript:PopOpen('$href');\" title='$name'><img src='gal_resize.php?image=slike/$filename'
border='0'  alt='$name'><br />$name</a></td> ";
 
Odgovor na temu

[es] :: PHP :: Mala prepravka ove galerije, moze pomoc

[ Pregleda: 3435 | Odgovora: 18 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.