Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: gd - problem ze ścieżkami względnymi
Forum PHP.pl > Forum > PHP
joix
Mam php Version 5.2.0, Apache 2.2.3
GD Version bundled (2.0.28 compatible)

Nie działają mi wywołania funkcji z ścieżkami względnymi:
  1. <?php
  2. getimagesize('ala.jpg');
  3. getimagesize('./ala.jpg');
  4. ?>


Podczas gdy działa wywołanie ze ścieżką bezwzględną:
  1. <?php
  2. getimagesize('/www/strony/obrazy/ala.jpg');
  3. ?>


Nie ma problemu z działaniem funkcji spoza gd:
np. nastepujaca funkcja dziala:
  1. <?php
  2. include('ala.php');
  3. is_file('ala.php');
  4. ?>


Bardzo proszę o pomoc,
Radek
mike
Polecam szczerze lekturę: Jak mądrze zadawać pytania?
Co rozumiesz pod pojęciem Nie działa. Klawiatura Ci wybucha czy monitor gaśnie?

Opisz dokładnie co się dzieje. Jakie błędy wyskakują? Czy w ogóle wyskakują?
Testujesz na ustawieniach:
  1. <?php
  2.  
  3. ini_set('display_erroes', 1);
  4.  
  5. ?>
:?:
joix
> Co rozumiesz pod pojęciem Nie działa. Klawiatura Ci wybucha czy monitor gaśnie?

przez "nie działa" rozumiem niezwracanie przez funkcję arraya z wymiarami i typem obrazka.

> Opisz dokładnie co się dzieje. Jakie błędy wyskakują? Czy w ogóle wyskakują?

Wyskakuja bledy typu Warning: [function.getimagesize]: failed to open stream: Nie ma takiego pliku ani katalogu in ...
Sytuacja ta ma miejsce tylko w przypadku sciezek wzglednych. Gdy podam sciezki bezwzgledne lub URL, to funkcja zwraca żądany array i nie krzyczy błędu.

P.S. Przepraszam za niedokladny opis.
Szacuneczek
cadavre
1. "The getimagesize() function does not require the GD image library."
2. Sprawdź przed wywołaniem getimagesize czy plik istnieje poprzez file_exists wpisując ta samą ścieżkę, którą podałeś w getimagesize. Jeśli też zwróci błąd to upewnij się, że plik na 100% istnieje, że np. nie potrzeba "../" zamiast "./".
joix
wspomniana funkcja zostala uzyta w skrypcie
http://moj.server.pl:80/~konto/test.php (Apache 1.3.33/ php 4.x)
i tam getimagesize() dziala we wszystkich przypadkach (sciezki wzgledne i bezwzgledne)
natomiast na porcie 8081
http://moj.server.pl:8081/~konto/test.php (Apache 2.2.3/ php 5.2.0)
getimagesize() dziala poprawnie tylko w przypadku gdy podaje sciezki bezwzgledne lub URLe.
np. getimagesize("http://wp.pl/zonk.gif") OK
np. getimagesize("/server/apache2/zonk.gif") OK
np. getimagesize("zonk.gif") NIE-OK (port 8081) / OK (port 80)

Zatem cos musze miec skopane w konfiguracji apache lub php..............
cadavre
A te img są na porcie 80 czy 8081? tongue.gif
Znaczy się czy gdy w przeglądarce wpiszesz adres do obrazka z portem 8081 wyświetli go czy wywali 404?
joix
widac je spod portu 8081 sad.gif
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.