Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Galeria zdjęć
zabcia92
post
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 19.06.2006

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


Niedawno napisałam swoją galerię zdjęć. Miało być tak że pobiera miniaturki zdjęć z folderu zdjecia, a po kliknięciu na dane foto pokazuje się duże zdjęcie z możliwością powrotu do miniaturek, linkiem następne i poprzednie.

Kod
<html><head>
<title>Galeria</title>
</head>
<body>
<? //Skrypt do realizacji prostej galerii

   //odczyt zawartości katalogu
$katalog = opendir ('zdjecia');
$i=1;
while ($plik = readir ($katalog)) {
   if (ereg (".gif$|.jpg$, $plik)) {$zdjecia[$i++] = $plik;}
}
closedir ($katalog);

if (($_GET['nr']>0) && ($_GET['nr']<=count($zdjecia))) {
   print "<p align=ceneter>";
   if ($_GET['nr']>1) {
      print '<a href="galeria.php?nr='.($_GET['nr']-1);
      print '">Poprzednie</a>&nbsp;&nbsp;&nbsp; ';
   }
   print '<a href="galeria.php">Galeria</a>&nbsp;&nbsp;&nbsp;';
   if ($_GET['nr']<count($zdjecia)) {
      print '<a href="galeria.php?nr='.($_GET['nr']+1).'">Następny</a>';
   }
   print "</p><p align=center>";
   $nazwapliku = 'zdjecia/duze' .$zdjecia[$_GET['nr']];
   if (file_exists($nazwapliku)) {
      $rozmiar = getimagesize($nazwapliku);
      print '<img src='.$nazwapliku.' '.$rozmiar[3];
      print '></p>';
   } else {
      print "Brak dużego zdjęcia</p>";
   }

}  elseif (count($zdjecia)>0) { //jest przynajmniej jedno zdjęcie
    print '<h2>Galeria zdjęć</h2><p align=center>';
    for ($i=1; $i<=count($zdjecia); $i++) {
       $nazwapliku = 'zdjecia/' .$zdjecia[$i];
       $rozmiar = getimagesize($nazwapliku);
       print "<a href=\"galeria.php?nr=$i\">";
       print "<img src=\"$nazwapliku\" ".$rozmiar[3];
       print "border=0 hspace=10 wspace=1- align=absmiddle></a>";
   }
   print "</p>";
} else { //w katalogu nie ma zdjęć
   print "Katalog jest pusty";
}
?>

</body></html>

Tak wygląda cały kod. Ale wciąż jest jakiś błąd...
Czy ktoś mógłby mi pomóc? i sprawdzić co jest źle?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
Master Miko
post
Post #2





Grupa: Zarejestrowani
Postów: 530
Pomógł: 0
Dołączył: 15.01.2005
Skąd: Warszawa

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


Tzn. jaki błąd? Pokazuje Ci php "blablalblal Error on line..", czy poprostu skrypt nie robi tego czego byś chciał?

btw: Zamiast robić:

  1. <?php
  2. $i=1;
  3. while ($plik = readir ($katalog)) {
  4.  if (ereg (".gif$|.jpg$, $plik)) {
  5.  $zdjecia[$i++] = $plik;}
  6. }
  7. ?>

zrób
  1. <?php
  2. while ($plik = readir ($katalog)) {
  3.  if (ereg (".gif$|.jpg$, $plik)) {
  4.  $zdjecia[] = $plik;}
  5. }
  6. ?>


Tylko po takiej zmianie pamiętaj, że index tablicy zaczyna się od 0 a nie od 1, chyba że to był efekt celowy...

Poza tym miłoby było gdybyś podał link...





EDIT -----
W przypadku COPY&PASTE CUDZE nie pomagam. Zamknąć TOPIC :|

Ten post edytował Master Miko 21.06.2006, 19:42:16


--------------------
Go to the top of the page
+Quote Post
phpion
post
Post #3





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Cytat(zabcia92 @ 21.06.2006, 15:32 ) *
Niedawno napisałam swoją galerię zdjęć.

"php 4 Cwiczenia praktyczne" wyd. Helion, str. 150. Jak ja nie lubie przypisywania sobie cudzych prac...
Go to the top of the page
+Quote Post
zabcia92
post
Post #4





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 19.06.2006

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


A ja nie powiedziałam że napisałam ją sama. Po za tym nie zgadłeś. To nie było php4 ćwiczenia praktyczne.
Chyba to nie zbrodnia korzystać z książek?


Cóż. Spróbuje coś z tym zrobić. Dzięki.
Podaję link : ta galeria
Go to the top of the page
+Quote Post
nasty
post
Post #5





Grupa: Zarejestrowani
Postów: 634
Pomógł: 14
Dołączył: 27.05.2006
Skąd: Berlin

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


No strasznie fajna, jak ty ja zrobilas tongue.gif
Cytat
Parse error: syntax error, unexpected ']', expecting T_STRING or T_VARIABLE or T_NUM_STRING in /var/www/sites/yoyo.pl/k/l/klasa1cg/new/galeria/galeria.php on line 11
Go to the top of the page
+Quote Post
phpion
post
Post #6





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Faktycznie, sorry, zwracam honor. W "php 4 Cwiczenia praktyczne" nie sa uzywane $_GET['zmienna']. Poprawiam sie wiec: "php 5 Cwiczenia praktyczne" ale ktora strona to nie wiem. A co do tego kto jest autorem skryptu: napisalas, ze '...napisalam swoja...' co chyba jednoznacznie sugeruje, ze jestes autorka tegoz skryptu.
PS: w tej ksiazce jest mase bledow, wiele rozwiazan jest prosto z dupy, p. Andrzej Kierzkowski wali byka za bykiem winksmiley.jpg wiec sugeruje zmiane lektury. Nie chodzi mi tu o bledy w druku, ale np. ksiega gosci. Przy pewnej liczbie wpisow (chyba 10 z tego co pamietam) kasuje starsze wpisy, poza tym chyba wypisuje tylko po 255 znakow dla kazdego wpisu.
PS2: bronisz sie piszac, ze nie napisalas nigdzie, ze galerie zrobilas sama. Prosze wiec: napisz mi co w niej napisalas sama, poza zmiana 6-15.php na galeria.php (tak jest w "php 4..."); caly kd jest idealnie zerzniety, nawet komentarze. Moze niektorych wkurzac moje czepianie sie, no ale mysle, ze nie mozna tolerowac przypisywania sobie autorstwa cudzych skryptow. Rozumiem, ze gdy ktos zaczyna przygode z php cieszy go kazdy, nawet najmniejszy skrypcik, no ale nie tlumaczy to takie zachowania.

Ten post edytował phpion.com 22.06.2006, 15:52:24
Go to the top of the page
+Quote Post
zabcia92
post
Post #7





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 19.06.2006

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


poprzez moja galerie rozumiem że to jest galeria na mojej stronie i jakby w pewnym sensie należy do mnie. Ale oczywiście nie powinnam przypisywać sobie jej autorstwa - tu ci zwracam honor. Ale skończmy już to. czy ktoś wie może jak możnaby poprawić wszystkie błędy jakie się tam pojawiają. (odkąd poprwiłam ten fragment, który mi podpowiedzieliście to tamten błąd zniknął ale pojawił się drugi). można te wszystkie błędy jakoś wyeliminować?
Go to the top of the page
+Quote Post
MissMoneypenny
post
Post #8





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 11.06.2005

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


Poprawiłam błędy i sprawdziłam na localhoście, u mnie teraz działa, więc powinno i u Ciebie.
  1. <html><head>
  2. <title>Galeria</title>
  3. </head>
  4. <body>
  5. <?php //Skrypt do realizacji prostej galerii
  6.  
  7.  //odczyt zawartości katalogu
  8. $katalog = opendir ('zdjecia');
  9. $i=1;
  10. while ($plik = readdir ($katalog)) {
  11.  if (ereg (".gif$|.jpg$", $plik)) {$zdjecia[$i++] = $plik;}
  12. }
  13. closedir ($katalog);
  14.  
  15. if (($_GET['nr']>0) && ($_GET['nr']<=count($zdjecia))) {
  16.  print "<p align=ceneter>";
  17.  if ($_GET['nr']>1) {
  18. print '<a href="galeria.php?nr='.($_GET['nr']-1);
  19. print '">Poprzednie</a> ';
  20.  }
  21.  print '<a href="galeria.php">Galeria</a>  ';
  22.  if ($_GET['nr']<count($zdjecia)) {
  23. print '<a href="galeria.php?nr='.($_GET['nr']+1).'">Następny</a>';
  24.  }
  25.  print "</p><p align=center>";
  26.  $nazwapliku = 'zdjecia/duze/' .$zdjecia[$_GET['nr']];
  27.  if (file_exists($nazwapliku)) {
  28. $rozmiar = getimagesize($nazwapliku);
  29. print '<img src='.$nazwapliku.' '.$rozmiar[3];
  30. print '></p>';
  31.  } else {
  32. print "Brak dużego zdjęcia</p>";
  33.  }
  34.  
  35. } elseif (count($zdjecia)>0) { //jest przynajmniej jedno zdjęcie
  36. print '<h2>Galeria zdjęć</h2><p align=center>';
  37. for ($i=1; $i<=count($zdjecia); $i++) {
  38.  $nazwapliku = 'zdjecia/' .$zdjecia[$i];
  39.  $rozmiar = getimagesize($nazwapliku);
  40.  print "<a href="galeria.php?nr=$i">";
  41.  print "<img src="$nazwapliku" ".$rozmiar[3];
  42.  print "border=0 hspace=10 wspace=1- align=absmiddle></a>";
  43.  }
  44.  print "</p>";
  45. } else { //w katalogu nie ma zdjęć
  46.  print "Katalog jest pusty";
  47. }
  48. ?>
  49.  
  50. </body></html>
Go to the top of the page
+Quote Post
zabcia92
post
Post #9





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 19.06.2006

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


wielkie dizeki! już sprawdzam!
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 22.08.2025 - 09:45