Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Metoda $_GET i OOP
Forum PHP.pl > Forum > PHP
Wolfie
Witam,


Przerabiam pewien przyklad z programowania obiektowego nie nie moge pojąc pewnej rzeczy związanej z przekazywaniem zmiennej za pomocą $_GET.

Oto kod źrodlowy (nie bede zagłębiał sie w klasy bo mysle ze to nie jest potrzebne) :

Najpierw wywoływany jest plik index.php ktorego czesc wyglada tak :

  1. <?php
  2.  
  3.    
  4.    require 'class.DirectoryItems.php';
  5.    $directory = 'graphics';
  6.    $di = new DirectoryItems($directory);
  7.    $di->imagesOnly();
  8.    $di->naturalCaseInsensitiveOrder();
  9.    echo '<div style="text-align:center;">';
  10.    echo 'Kliknij na nazwie pliku, aby obejrzeć go w pełnych rozmiarach<br />';
  11.    $filearray = $di->getFileArray();
  12.    $path = '';
  13.    //określa rozmiar miniaturki
  14.    $size = 100;
  15.    foreach ($filearray as $key => $value) {
  16.        $path = $directory.'/'.$key;
  17.        
  18.        echo '<img src="getthumb.php?path=$path&amp;size=$size" '.
  19.            'style="border:1px solid black;margin-top:20px;" '.
  20.            'alt= "'.$value.'"/><br />'."\n";
  21.        echo '<a href="'.$path.'" target="_blank" >';
  22.        echo 'Tytuł: '.$value.'</a> <br />'."\n";
  23.    }
  24.    echo '</div><br />';
  25. ?>


Jak widać w znaczniku img src odpalany jest plik hetthumb.php ktory wyglada tak :

  1. <?php
  2.  
  3. //ten plik będzie wartościa src znacznika img
  4.  
  5.    require 'class.ThumbnailImage.php';
  6.    $path = @$_GET['path'];
  7.    $maxsize = @$_GET['maxsize'];
  8.    if(!isset($maxsize)) {
  9.        $maxsize = 100;
  10.    }
  11.    if(isset($path)) {
  12.        $thumb = new ThumbnailImage($path, $maxsize);
  13.        $thumb->getImage();
  14.    }
  15. ?>


Czego tutaj nie potrafie zrozumiec to sposob przekazywania zmiennej $path i $maxsize, nie wiem w ktora strone jest to przekazywane tzn z ktorego pliku do ktorego i skad wie wogole bierze ta zmienna, bo jezeli w pliku index.php zmienna ta przed petla foreach jest ustawiana na pusta ('') to dlaczego w petli foreach nagle pojawiaja sie jakies wartosci ? Skad to sie bierze ?

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

Ok nie zauwazylem linijki w petli foreach
  1. <?php
  2. $path = $directory.'/'.$key;
  3. ?>


Co nie zmienia faktu ze i tak nie wiem dlaczego w pliku getthumb.php zastosowana jest metoda $_GET['path'] i $_GET['maxsize'].....
blooregard
Cytat
<img src="getthumb.php?path=$path&amp;size=$size"

Tu masz wysyłanie zmiennych metodą GET (chociaż wg. mnie zamiast size=$size powinno być size=$maxsize)

Cytat
$path = @$_GET['path'];
$maxsize = @$_GET['maxsize'];

Tu masz odebranie tych zmiennych z GET i podstawienie ich do zmiennych lokalnych w metodzie klasy.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.