abszolút elérési út?
A szerver "../mysubdir/" könyvtárából szeretnék megjeleníteni egy képet az oldalamon, de az src="../mysubdir/filename.ext" (illetve linknél a href="../mysubdir/filename.ext") mindig megváltozik a kimeneten "../mysubdir/filename.ext" -re, és ezáltal File Not Found hibát generál.
Link esetében ezt ki tudom kerülni egy változóval és get-es átadással (href="actual.php?newvar=../mysubdir/filename.ext"), de képnél kéne az
abszolút elérési út a "../mysubdir/" helyett!
Hogyan tudom megkapni?
Előre is köszi!
■ Link esetében ezt ki tudom kerülni egy változóval és get-es átadással (href="actual.php?newvar=../mysubdir/filename.ext"), de képnél kéne az
abszolút elérési út a "../mysubdir/" helyett!
Hogyan tudom megkapni?
Előre is köszi!
relatív kell
Szóval máshol keresd a hibát, esetleg ha tudod, nézd meg az oldalad access.log-ját
Elérési útvonal
Az elérési út jó úgy,
Linkelt fájlnál megy, képnél viszont a "www.domain.tld/upload/filename.ext"-t próbálja elérni.
Illetve az előbb már
Természetesen nem a kép és az egyéb fájl között van különbség, csak ha közvetlenül ezt írom "<a href='../upload/filename.ext'>", akkor nem jó,
de ha egy GET-es átvitel után
"myvar=www.domain.tld?myvar='../upload/filename.ext'"
hívok egy "include($myvar);"-t, akkor megy.
hol van az upload?
de.úgy néz ki, hogy van
úgy néz ki, hogy van a szerveren egy könyvtáram:
.. - gyökér
<html> - itt vannak a php fájljaim
<upload> - itt meg a feltöltött cucc
nekem is az volt a tippem, hogy ez lehet a gond, de biztosan van rá megoldás, hiszen, ha includolni tudok onnan, akkor látom, ergo tudok rá hivatkozni!
csak nem tudom, hogy hogyan.
már napok óta...
:-(
Lehet, hogy így?
<html> - valami.php -> <img src="/upload/konyvtar.gif">
<html/elso_szintu> - valami.php -> <img src="../upload/konyvtar.gif">
<html/elso_szintu/alkonyvtar> - valami.php -> <img src="../../upload/konyvtar.gif">
<upload> - itt vannak a képek (konyvtar.gif)
symlinkkel jó
a html kód abban tud csak keresgélni ami kivülről amúgyis látszik és ez jól is van így.
a php bezzeg futkároz a gépen, néha pl. hiba esetén kiir olyan dolgokat is amiket normálisan a web felől nem lehet látni...
LÉNYEG:
csinálj egy szimbolikus linket a html könyvtáradba ami az upload-ra mutat, aztán szedd ki a ..okat a hivatkozásból.
ui: ha windowst használsz nem tudsz szimlinket csinálni, nagyon sajnállak; szvsz válts linuxra :)
symlinkkel jó
rájöttem h nem a php és a html különbsége csinálja a bajt.
nekem az a furcsa, hogy <a href=> műxik, <img src=> meg nem.
de ez a szimlinkes módszer elvileg kell hogy működjön...
de ha már phpt használsz,
URL != path
Csinálj egy kis php wrappert, aminek átadod a file nevét, az pedig a ../upload-ból beolvassa és a tartalmat a kimenetre küldi (megfelelő fejlécekkel), és máris működik ez <a href="/akarmi.php?file=filename.ext"> vagy akár ez: <a href="/akarmi.php?file=filename.ext">
Sőt olyat is lehet, hogy <img src="/akarmi.php?file=filename.ext">
üdv,
Zila