Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> galeria - pod obrazkiem nazwa obrazka.jpg, i rozmiar np. 57 kb
szymek001
post
Post #1





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

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


Poszukuje jakiejś galeri tak żeby wrzucić do folderu index.php i od razu robiły ukłądało sie pololei (01,02...) i pod obrazkiem nazwa i rozmiar
np. 01.jpg
45 kb

Obrazki nie mają być miniaturami ( linkiem do dużych obrazków)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
evilsoja
post
Post #2





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

Posty w temacie
- szymek001   galeria - pod obrazkiem nazwa obrazka.jpg   17.12.2005, 17:35:18
- - Lars   [PHP] pobierz, plaintext <?php$directory='gal/'...   17.12.2005, 19:25:06
- - szymek001   Dziękuje, zrobiłem [PHP] pobierz, plaintext  <?...   17.12.2005, 22:23:46
- - mike_mech   Na oko może byc tak: (pisane z palca) [PHP] pobier...   30.12.2005, 01:26:58
- - szymek001   nie działa, tzn strona jest biała   30.12.2005, 15:16:45
- - mike_mech   Fakt pomyliłem się (w piątej linii jest literówka,...   30.12.2005, 15:21:22
- - szymek001   aha.. no ja nie znam sie na php PS. a co to daj...   30.12.2005, 17:59:31
- - Guest   nie działa   13.01.2006, 14:12:24
- - mike_mech   Cytat(Guest @ 2006-01-13 14:12:24)nie działa ...   13.01.2006, 14:39:43
- - szymek001   może mu chodzi o to, że jest białoo i nic nie ma, ...   14.01.2006, 09:13:26
- - maxib   działający: [PHP] pobierz, plaintext <?phperro...   17.01.2006, 23:56:04
- - szymek001   http://cnk.goin.pl/1/ działa, ale nie do końca bo...   18.01.2006, 10:02:16
- - crash   Na końcu pętli dodaj $i++   18.01.2006, 10:10:26
- - evilsoja   A czy da się zrobić aby na tej stronie były ułożon...   7.02.2006, 21:09:28
- - crash   Da się.   7.02.2006, 21:22:29
- - evilsoja   a czy mógłby mi ktoś pomóc zrobić taki kod ? Pros...   7.02.2006, 21:31:04
- - crash   Pisz pisz, nie wstydź się. Pobierz ładnie listę pl...   7.02.2006, 21:48:40
- - free   Powyzszy kod dziala, ale nie wyswietla wszystkich ...   8.02.2006, 13:36:55
- - crash   Ehh... Korzystając z chwili wolnego czasu i Waszeg...   8.02.2006, 15:30:39
- - evilsoja   U.u Pięknie Dziękuje ... mam pytanko może tro...   8.02.2006, 15:39:31
- - crash   Miniaturki generuje skrypt. Dla np. obraz.png minu...   8.02.2006, 15:52:07
- - evilsoja   u mnie nie generuje miniaturki a nadalem prawa c...   8.02.2006, 16:04:48
- - crash   Niech zgadnę: Skopiowałeś cały kod nie zastanawiaj...   8.02.2006, 16:13:02
- - evilsoja   Ajjj ... Przepraszam - myślałem że to link do tego...   8.02.2006, 16:20:56
- - free   Te 2 linki sa takie sama. Jak to skleic ?   8.02.2006, 17:00:34
- - evilsoja   odnajdź w podanym linku funkcję function imgType(...   8.02.2006, 17:03:23
- - free   Ok wstawilem i waskoczyl blad : Warning: opendir(...   8.02.2006, 17:09:32
- - evilsoja   Działający : [PHP] pobierz, plaintext <?php...   9.02.2006, 14:39:18
- - Lars   Cytat(free @ 2006-02-08 12:36:55)Powyzszy kod...   9.02.2006, 15:39:36
- - zein   a ja mam lekkawy problem z tym sami zobaczcie: ht...   20.02.2006, 16:24:21
- - kondorekk   szymek sprawdzales ten skrypt?   20.02.2006, 17:07:12
- - zein   no wlasie... sprawdzil ktos... bo serio ciekawy j...   23.02.2006, 22:05:19
- - szymek001   Crash dziękówka, wszystko działa, przejrzyście nap...   4.09.2006, 12:15:10


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.09.2025 - 04:20