Witam

Wyświetlam sobie część nazwy (4001) pliku (4001.jpg) w tym kodzie:

  1. //katalog z dużymi obrazkami
  2. $katalog = "160x200";
  3.  
  4. //katalog z miniaturkami
  5. $katalogMiniaturki = "160x200m";
  6.  
  7. //ilość zdjęć na stronie
  8. $naStronie = 20;
  9.  
  10. //czy ma być opis zdjęcia - jego numer - true to tak, false to nie
  11. $opisZdjecia = true;
  12.  
  13. //---------------------------------------------
  14. //ilość zdjęć - liczy pliki w katalogu
  15. $ilosc = count(glob("./$katalog/*"));
  16.  
  17. //ilość stron
  18. $iloscStron = ceil($ilosc/$naStronie);
  19.  
  20. //odczyt katalogu z obrazkami
  21. $pliki = glob($katalog.'/*.jpg');
  22. $i = 0;
  23.  
  24. //utworzenie tablicy z obrazkami
  25. foreach($pliki as $key => $value){
  26. $tab[$i] = $value;
  27. $i++;
  28. }
  29.  
  30. //sortowanie tablicy
  31. sort($tab);
  32.  
  33. for($i = 0; $i < $ilosc; $i++){
  34.  
  35. if($opisZdjecia) $opisZdjecia = '<h3>Pościel ELWAY rozmiar '.($katalog).'</h3>'. '<h2>'.'Wzór nr '.basename($tab[$i], ".jpg").'</h2>';
  36. $tablica[$i] = '<li><a href="'.$tab[$i].'" class="highslide" onclick="return hs.expand(this)" title="Posciel ELWAY rozmiar '.($katalog).' Wzór nr '.basename($tab[$i], ".jpg").'"><img src="'.str_replace($katalog, $katalogMiniaturki, $tab[$i]).'" />'.$opisZdjecia.'</a></li>';
  37. }
  38.  
  39. //sprawdza aktualny numer strony
  40. if(isset($_GET['strona']) && $_GET['strona'] > 0 && $_GET['strona'] <= $iloscStron) $strona = $_GET['strona']-1;
  41. else $strona = 0;
  42.  
  43. $poczatek = $strona * $naStronie;
  44. if($poczatek >= $ilosc) $poczatek = 0;
  45.  
  46. $koniec = $poczatek + $naStronie;
  47. if($koniec >= $ilosc) $koniec = $ilosc;
  48.  
  49. //generowanie wykazu
  50. for($i = $poczatek; $i < $koniec; ++$i){
  51. echo $tablica[$i]."\n";
  52. }
  53.  


dokładnie robi to ten kawałek:

  1. '<h2>'.'Wzór nr '.basename($tab[$i], ".jpg").'</h2>'


Wszystko fajnie działa lecz nazwę pliku muszę rozbudować, będzie miała postać 4001_(ciąg znaków).jpg , np. 4001_drty.jpg ale w dalszym ciągu chciałbym aby
wyświetlało się tylko 4001, napisałem sobie w uproszczeniu, na sztywno, szkielet kodu który to robi:

  1.  
  2. $plik='4001_zpc.jpg';
  3. $nazwa=basename($plik, ".jpg");
  4. $prefix=explode('_', ($nazwa));
  5. echo "Wzór numer " . ($prefix[0]) . "";
  6.  



ale nie umie tego wpisać w ten kod który już mam. Mógłby ktoś mi to wpisać w mój kod.


Temat rozkminiłem, jeśli komuś się przyda to proszę:

  1. //sortowanie tablicy
  2. sort($tab);
  3.  
  4. for($i = 0; $i < $ilosc; $i++){
  5.  
  6. //wyodrębnienie części nazwy z pliku
  7. $nazwa=basename($tab[$i], ".jpg");
  8. $prefix=explode('_', ($nazwa));
  9.  
  10. if($opisZdjecia) $opisZdjecia = '<h3>Pościel ELWAY rozmiar '.($katalog).'</h3>'. '<h2>'.'Wzór nr '.($prefix[0]).'</h2>';
  11. $tablica[$i] = '<li><a href="'.$tab[$i].'" class="highslide" onclick="return hs.expand(this)" title="Posciel ELWAY rozmiar '.($katalog).' Wzór nr '.($prefix[0]).'"><img src="'.str_replace($katalog, $katalogMiniaturki, $tab[$i]).'" />'.$opisZdjecia.'</a></li>';
  12. }