<?php // wypisanie plików znajdujących się w katalogu za pomocą <select> if ($dir) { } } ?> // pokazywanie pliku podanego w select z wczesniejszym skalowaniem <input type="submit" id="galeria_pokarz" value="pokarz" name="pokarz" class="button_basic"> <?php $nazwa = $_POST['pliki_galeria']; $_SESSION['path'] ="../$sciezka_mod1/$nazwa"; } $szer1 = $dane[0]; $wys1 = $dane[1]; $zmiana2 = ($dane[0] * 1 / 100); $zmiana3 = ($dane[1] * 1 / 100); while (($wys1 > 200)||($szer1 > 200)) { $wys1 = ($wys1 - $zmiana3); $szer1 = ($szer1 - $zmiana2); } $_SESSION['wysokosc_obrazka'] = $wys1; $_SESSION['szerokosc_obrazka'] = $szer1; $_SESSION['powrot_galeria'] = 1; } ?> <?php echo '<img SRC="' . $_SESSION['path'] . '" width="' . $_SESSION['szerokosc_obrazka'] . '" height="' . $_SESSION['wysokosc_obrazka'] . '" border="0" />'; ?>
a teraz sposób działania:
mam katalogi
- katalog_a
----> katalog_b
--------> mod1.php
----> katalog_c
--------> katalog_d
-----------> plik.jpg
oraz to co wywołuję z bazy danych: $sciezka_mod1 (jest to po prostu nazwa katalogów). dla przykładu "katalog_c/katalog_d"
zatem żeby dostać się z mod1.php do plik.jpg moja scierzka to właśnie ../$sciezka_mod1/$nazwa czyli to co w $_SESSION['path'];
Dlatego przechowuję w bazie danych bo później mogę mieć kilka takich katalogów i podkatalogów jak jest to od katalog c
Rezultat:
plik jest poprawnie wczytywany w select, poprawnie skalowany, w img src pokazuje się np. <img SRC="../katalog_c/katalog_d/11.png" width="136.4" height="198" border="0" /> i pojawia sie ramka takiej wysokości i szerokości jaka powinna być ale zamiast obrazka pojawia się znak zapytania (w safari) albo znaczek przerwanej (w firefoxie)
Jak to rozwiązać bez używania http://..........