Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

2 Stron V  < 1 2  
Reply to this topicStart new topic
> galeria - pod obrazkiem nazwa obrazka.jpg, i rozmiar np. 57 kb
crash
post
Post #21





Grupa: Przyjaciele php.pl
Postów: 2 196
Pomógł: 2
Dołączył: 17.01.2004
Skąd: Sosnowiec

Ostrzeżenie: (0%)
-----


Miniaturki generuje skrypt. Dla np. obraz.png minuaturka ma nazwę small_obraz.png
Go to the top of the page
+Quote Post
evilsoja
post
Post #22





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 6.02.2006

Ostrzeżenie: (0%)
-----


u mnie nie generuje miniaturki (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
a nadalem prawa chmod 777 dla folderu mini

Ten post edytował evilsoja 8.02.2006, 16:23:39
Go to the top of the page
+Quote Post
crash
post
Post #23





Grupa: Przyjaciele php.pl
Postów: 2 196
Pomógł: 2
Dołączył: 17.01.2004
Skąd: Sosnowiec

Ostrzeżenie: (0%)
-----


Niech zgadnę: Skopiowałeś cały kod nie zastanawiając się nawet co oznaczają podane w nim linki?
Go to the top of the page
+Quote Post
evilsoja
post
Post #24





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 6.02.2006

Ostrzeżenie: (0%)
-----


Ajjj ... Przepraszam - myślałem że to link do tego tematu (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)

----------------------------------------

ok - posklejałem to - działa - Wielkie Dzięki (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) (IMG:http://forum.php.pl/style_emoticons/default/exclamation.gif)

Ten post edytował evilsoja 8.02.2006, 16:47:42
Go to the top of the page
+Quote Post
free
post
Post #25





Grupa: Zarejestrowani
Postów: 269
Pomógł: 0
Dołączył: 6.02.2006

Ostrzeżenie: (0%)
-----


Te 2 linki sa takie sama. Jak to skleic ?
Go to the top of the page
+Quote Post
evilsoja
post
Post #26





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 6.02.2006

Ostrzeżenie: (0%)
-----


odnajdź w podanym linku funkcję
function imgType($name)
i wklej w jej miejsce
oraz
function resizeImage
i również całą wklej w należale miejsce (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
free
post
Post #27





Grupa: Zarejestrowani
Postów: 269
Pomógł: 0
Dołączył: 6.02.2006

Ostrzeżenie: (0%)
-----


Ok wstawilem i waskoczyl blad :

Warning: opendir(./img/): failed to open dir: Invalid argument in c:\usr\krasnal\www\a\galeria.php on line 111

Warning: asort() expects parameter 1 to be array, null given in c:\usr\krasnal\www\a\galeria.php on line 132

Warning: Invalid argument supplied for foreach() in c:\usr\krasnal\www\a\galeria.php on line 152
Go to the top of the page
+Quote Post
evilsoja
post
Post #28





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 6.02.2006

Ostrzeżenie: (0%)
-----


Działający :

  1. <?php
  2.  
  3. function imgType($name)
  4. {
  5.  if(substr($name, -4, 4) == '.jpg' || substr($name, -4, 4) == 'jpeg')
  6.  {
  7. return "IMAGETYPE_JPEG";
  8.  }
  9.  elseif(substr($name, -4, 4) == '.gif')
  10.  {
  11. return "IMAGETYPE_GIF";
  12.  }
  13.  elseif(substr($name, -4, 4) == '.png')
  14.  {
  15. return "IMAGETYPE_PNG";
  16.  }
  17. }
  18.  
  19. function resizeImage($source, $max_x, $max_y, $save_image, $jpeg_quality = 100)
  20. {
  21.  /*
  22. * source - obrazek jpeg
  23. * max_x - maksymalna szerokosc pomniejszonego obrazka
  24. * max_y - maksymalna dlugosc pomniejszonego obrazka
  25. * save_image - nazwa pliku do ktorego zostanie zapisany nowy obrazek
  26. * jpeg_quality - jakosc powstalego obrazu jpeg - jezeli bedzie inny to argument jest nie wazny (domyslnie 100)
  27. */
  28.  
  29. if(imgType($source) == "IMAGETYPE_JPEG")
  30. {
  31.  $img_src = imagecreatefromjpeg($source);
  32. }
  33. elseif(imgType($source) == "IMAGETYPE_GIF")
  34. {
  35.  $img_src = imagecreatefromgif($source);
  36. }
  37. elseif(imgType($source) == "IMAGETYPE_PNG")
  38. {
  39.  $img_src = imagecreatefrompng($source);
  40. }
  41. else
  42. {
  43.  die('Wrong filetype! Accepted images: JPG/JPEG, GIF, PNG');
  44. }
  45.  
  46.  $image_x = imagesx($img_src);
  47.  $image_y = imagesy($img_src);
  48.  if($image_x > $image_y) // Landscape
  49.  {
  50. $ratio_x = ($image_x > $max_x) ? $max_x/$image_x : 1;
  51. $ratio_y = $ratio_x;
  52. $move = 'y';
  53.  }
  54.  else // Portrait
  55.  {
  56. $ratio_y = ($image_y > $max_y) ? $max_y/$image_y : 1;
  57. $ratio_x = $ratio_y;
  58. $move = 'x';
  59.  }
  60. $new_x = $image_x*$ratio_x;
  61. $new_y = $image_y*$ratio_y;
  62.  
  63. $move_x = ($move == "x") ? ($max_x-$new_x)/: 0;
  64. $move_y = ($move == "y") ? ($max_y-$new_y)/: 0;
  65.  
  66. $new_img = imagecreatetruecolor($max_x, $max_y);
  67. $background = imagecolorallocate($new_img, 255, 255, 255);
  68. imagefill($new_img, 0, 0, $background);
  69. imagecopyresampled($new_img, $img_src, $move_x, $move_y, 0, 0, $new_x, $new_y, $image_x, $image_y);
  70.  
  71. if(imgType($save_image) == "IMAGETYPE_JPEG")
  72. {
  73.  imagejpeg($new_img, $save_image, 100);
  74. }
  75. elseif(imgType($save_image) == "IMAGETYPE_GIF")
  76. {
  77.  imagegif($new_img, $save_image);
  78. }
  79. elseif(imgType($save_image) == "IMAGETYPE_PNG")
  80. {
  81.  imagepng($new_img, $save_image);
  82. }
  83.  
  84.  echo '<img src="'.$save_image.'" border="1">';
  85. }
  86.  
  87. function showFileSize( $size )
  88. {
  89. $sizes = array( 'B', 'kB', 'MB', 'GB', 'TB' );
  90. $pos  = 0;
  91.  
  92. while( $size >= 1024)
  93. {
  94. $size /= 1024;
  95. $pos++;
  96. }
  97.  
  98. return sprintf( '%.02f', $size ) . ' ' . $sizes[ $pos ];
  99. }
  100.  
  101. $dir = './img/'; // katalog z grafikami
  102. $min = './mini/'; // katalog na miniaturki
  103.  
  104. $minW = 100; // szerokość miniaturki
  105. $minH = 100; // wysokość miniaturki
  106.  
  107. $perLine = 4; // ilość grafik w linii
  108.  
  109. $file = array();
  110.  
  111. if( $dh = opendir( $dir ) )
  112. {
  113.  while( ( $file = readdir( $dh ) ) !== false )
  114.  {
  115. if( !is_dir( $dir . $file ) )
  116. {
  117.  if( !file_exists( $saveFile = $min . 'small_' . $file ) )
  118.  {
  119. resizeImage( $dir . $file, $minW, $minH, $saveFile );
  120.  }
  121.  
  122.  $files[ $file ] = array(
  123.  'time' => filectime( $dir . $file ),
  124.  'size'  => showFileSize( filesize( $dir . $file ) )
  125. );
  126. }
  127.  }
  128.  
  129.  closedir( $dh );
  130. }
  131.  
  132. asort( $files );
  133.  
  134. ?>
  135. <style type="text/css">
  136.  body, td {
  137. font: 12px Verdana;
  138. text-align: center;
  139. vertical-align: top;
  140. white-space: nowrap;
  141.  }
  142.  img {
  143. border: 0px;
  144.  }
  145. </style>
  146. <table>
  147.  <tr>
  148. <?php
  149.  
  150. $num = 0;
  151.  
  152. foreach( $files as $fileName => $fileInfo )
  153. {
  154.  if( ( $num % $perLine ) == 0 and ( $num > 0 ) )
  155.  {
  156.  
  157.  ?>
  158.  </tr>
  159.  <tr style="height: 5px;">
  160.  </tr>
  161.  <tr>
  162.  <?php
  163.  
  164.  }
  165.  
  166.  ?>
  167. <td>
  168.  <i><?= $fileName; ?></i><br/>
  169.  <a target="_BLANK" href="<?= $dir . $fileName; ?>"><img src="<?= $min . 'small_' . $fileName; ?>" alt=""/></a><br/>
  170.  Rozmiar: <b><?= $fileInfo[ 'size' ]; ?></b><br/>
  171.  Dodano: <b><?= date( 'd/m/Y', $fileInfo[ 'time' ] ); ?></b>
  172. </td>  
  173.  <?php
  174.  
  175.  $num++;
  176. }
  177.  
  178. ?>
  179.  </tr>
  180. </table>
Go to the top of the page
+Quote Post
Lars
post
Post #29





Grupa: Zarejestrowani
Postów: 279
Pomógł: 15
Dołączył: 29.04.2005
Skąd: Gdynia

Ostrzeżenie: (0%)
-----


Cytat(free @ 2006-02-08 12:36:55)
Powyzszy kod dziala, ale nie wyswietla wszystkich rozmiarow plikow :
Cytat
pliki/TŁObg.gif
0 kB

pliki/back_button.gif
0 kB

pliki/kropki.gif
1 kB

pliki/separator.gif
0 kB

Dziwne bo czasem serwer /w moim przypadku lokalny krasnal/ jak nie wyswietla to wszystkiem pliki a tu wyswietla tylko 1 rozmiar pliku.

Skrypcik bylby bardziej praktyczny gdyby nie wyswietlal rozszerzenia. Co usunac w tym skrypcie?
W linii :
Kod
foreach( glob( $directory . '*.*' ) as $name )
usunelem .* ale nie pomoglo.

to jest normalne. filesize daje rozmiar w bajtach i to sie dzieli na 1024 aby uzyskac ile to kilobajtow. dałem settype($var, 'integer') aby stało sie to liczbą całkowitą (a nie pozostalo czyms takim 2,183928423972349 (IMG:http://forum.php.pl/style_emoticons/default/Rkingsmiley.png) (IMG:http://forum.php.pl/style_emoticons/default/guitar.gif) )

Pozdrawiam,
lars
Go to the top of the page
+Quote Post
zein
post
Post #30





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 9.02.2006

Ostrzeżenie: (0%)
-----


a ja mam lekkawy problem z tym

sami zobaczcie: http://www.ucz.tme.szczecin.pl/~zein/galeria.php

i mam pytanie czy raz utworzona galeria bedzie caly czas sie tworzyla? czy pozniej juz skrypt korzysta z istniejacych plikow??(IMG:http://forum.php.pl/style_emoticons/default/snitch.gif)
Go to the top of the page
+Quote Post
kondorekk
post
Post #31





Grupa: Zarejestrowani
Postów: 35
Pomógł: 0
Dołączył: 5.12.2005

Ostrzeżenie: (0%)
-----


szymek sprawdzales ten skrypt?
Go to the top of the page
+Quote Post
zein
post
Post #32





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 9.02.2006

Ostrzeżenie: (0%)
-----


no wlasie... (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) sprawdzil ktos... bo serio ciekawy jest


a moze ktos mi poleci jakis skrypt najlepiej taki ktory doslownie by wszystko zautmatyzowal...
chce wrzucic na ftp do katalogu z galeriami jpg ktore beda w folderach zarazem bedacych kategoriami i doslownie tworze na serwerze folder i wtedy skrpyt odrazu wyswietli link z wlasnie ta kategoria... jest taki skrypt gdzies??(IMG:http://forum.php.pl/style_emoticons/default/snitch.gif)
Go to the top of the page
+Quote Post
szymek001
post
Post #33





Grupa: Zarejestrowani
Postów: 135
Pomógł: 0
Dołączył: 21.09.2005

Ostrzeżenie: (10%)
X----


Crash dziękówka, wszystko działa, przejrzyście napisane, sam umiałem zmienić to co potrzebowałem smilingsmiley.gif
Jeszcze raz więkie THX

A co zrobić, by np. było po 15 obrazków na stronie i na dole linki next/back ?
żeby galeria miała kilka stron?
Go to the top of the page
+Quote Post

2 Stron V  < 1 2
Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 10.01.2026 - 21:46