Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jak prawidłowo umieścić pliki w tablicy?
Forum PHP.pl > Forum > PHP
pafeu
jak odnoszę się do jednego zdjęcia
Kod
echo "<img src=http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['REQUEST_URI'])."/2.jpg>"

to wszystko jest w porządku
a jak chcę pobrać zdjęcie do tablicy
Kod
$zdjecia= glob ("http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['REQUEST_URI'])."/2.jpg");

tu już nie chce działać
pomóżcie znaleźć błąd bądź inne rozwiązanie sciana.gif
dodam jeszcze, że skrypt ładujący zdjęcia umieszczony jest w index a zdjęcia znajdują się w: http://ommo.pl/oswietlenie-led/gu-10/
i chcę aby po wejściu na stronę produkt-1 wyświetlało zdjęcia umieszczone w tym katalogu.
mortus
glob() nie służy do wstawiania elementów do tablicy. Elementy w tablicy zapisuje się inaczej:
  1. // czyli tak:
  2. $tablica[] = "http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['REQUEST_URI'])."/2.jpg";
  3. // lub tak:
  4. $tablica = array(
  5. 0 => "http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['REQUEST_URI'])."/2.jpg",
  6. );
  7. // lub jeszcze inaczej

Odsyłam.

PS: Po zastanowieniu się dochodzę do wniosku, że kolega sam nie wie, co chce zrobić. Zatem proponuje zmienić dział na Poszukuję/Zlecę.
pafeu
w odniesieniu do jednego zdjęcia działa
ale jak pobrać wszystkie zdjęcia z katalogu
poprzednio używałem
  1. $zdjecia= glob ("*.jpg");

i działało dobrze
ale teraz muszę zastosować ścieżki bezwzględne i poniższy kod nie działa
  1. $zdjecia= glob ("http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['REQUEST_URI'])."/*.jpg");

PS:
Wiem co chcę osiągnąć - chcę pobrać zdjęcia z katalogu, zdjęcia w pętli z opisami i to już mi działa ale teraz muszę zastosować ścieżki bezwzględne i jak pisałem wyżej moje rozwiązanie nie działa.
mortus
Bo ścieżka bezwzględna to nie adres URL, a Ty podajesz jako argument właśnie adres URL. Ścieżka bezwzględna to nic innego jak lokalizacja na serwerze/"miejsce" w systemie plików, począwszy od głównego katalogu aplikacji (document_root, czyli przeważnie htdocs lub public_html). Oczywiście jeśli to miejsce jest uzależnione od adresu URL, to jak najbardziej można skorzystać z tablicy superglobalnej $_SERVER. Powinno wystarczyć:
  1. $zdjecia = glob($_SERVER['REQUEST_URI'] . '*.jpg');

Natomiast pełną ścieżkę bezwzględną możesz otrzymać z konkatenacji:
  1. $path = $_SERVER['DOCUMENT_ROOT'] . $_SERVER['REQUEST_URI'];
pafeu
Cytat(mortus @ 11.03.2012, 23:12:55 ) *
Bo ścieżka bezwzględna to nie adres URL, ...


to był akurat ostatni mój test bo już nie wiem co z tym zrobić
taki przykład działa dobrze
  1. foreach (glob("*.*g") as $zdjecie){
  2. echo "<img src=".$zdjecie." width=100px />";
  3. }

a ten nie chce działać
  1. foreach (glob(dirname($_SERVER['REQUEST_URI']).'/'."*.*g") as $zdjecie){
  2. echo "<img src=".$zdjecie." width=100px />";
  3. }

dlaczego, co robię źle.
Założenie jest takie, że po wejściu do katalogu który jest wskazywany przez dirname($_SERVER['REQUEST_URI'])
pokazać wszystkie zdjęcia w nim zawarte.
Dodam, że powyższy kod znajduje się w index, do którego są wczytywane podstrony
jak to zrobić?
może to trzeba zrobić całkowicie inaczej? - podpowiedzcie jak.
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.