absynth81
9.02.2011, 06:47:20
Witam,
Post zakladam w przedszkolu ponieważ mam nikle pojecie o PHP-ie i ogolnie o projektowaniu stron. Strona nie posiada zadnego zaawansowanego CMS-a. Odchodzacy informatyk wyjaśnił mi tylko możliwość dokonywania zmian poprzez program Navicat ? czyli do baz SQL.
Na serwerze jest plik index.php ? zawiera kod jakby pierwszej strony, najrozniejsze katalogi z PDF-ami, zdjęciami ze strony, animacjami, plikami php itd. Edycja tresci na podstronach jest w formie tabelki w programie o którym wpomnialem wyzej. Wiem ze kazda kolumna jest jakos oprogramowana ? tylko ja nie wiem jak w tym programie to kodowanie zobaczyc. Mam tabele i metoda prob i podglądów zmieniam tresc na stronie.
Problem:
Na podstronach mam katalogi produktow, które odwiedzajacy może pobrac w formie pdf. Pobiera je się poprzez klikniecie w zlinkowane slowo ?katalog? i ikonke PDF-a stojaca tuz obok . Pobieranie dziala tylko w przeglądarkach : Firefox i InternetExplorer. W Operze kursor nie przechodzi w raczke tak jak to się dzieje w przypadku najechania na link w Mozilli i IE wiec pobranie katalogu jest niemożliwe.
Dotarlem do kodu podstrony poprzez klikniecie prawym przyciskiem myszy w przeglądarce i pokazanie ?zrodla strony?.
Oto fragment dotyczący pobierania katalogu:
<td valign="top"><p align="justify"><p><a href="lib/tmp.php?file=../pdf/czerwony/podzespoly.pdf"><li> Katalog <img src="tplimg/ikony/pdf.jpg" border="0"></a></p></p></td>
A to zawartość tmp.php:
<?php
$file=$_GET['file'];
$filename = basename($file);
header("Content-type: application/force-download");
header("Content-Transfer-Encoding: binary");
header("Content-length: ".filesize($file));
header("Content-Disposition: attachment; filename=$filename");
readfile($file);
?>
Dlaczego to nie dziala w Operze?
-Z gory dziekuje za odpowiedz i przepraszam za opis.
nospor
9.02.2011, 10:04:25
Twoj kod html to jakas sieczka.... Skoro nie pojawia ci sie kursor to nie jest to problem php ani mysql tylko HTML
Zagnieżdzasz bez sensu w sobie dwa P, robisz linka z LI ktorego notabene nigdzie potem nie zamykasz i ktory notabene zyje sobie bez UL
Kod, powinien miej wiecej wygladac tak:
<a href="lib/tmp.php?file=../pdf/czerwony/podzespoly.pdf">Katalog
<img src="tplimg/ikony/pdf.jpg" border="0"></a>
absynth81
9.02.2011, 13:09:45
dziekuje za odp. ale chyba nie zrozumiales problemu.
Strona tytulowa jest zawarta w pliku index.php - tu zeby zminic tresc musze edytowac plik i zmieniac kod html. Jak na stronie tytulowej wybiore jeden z czterech dzialow wyswietla sie podstrona z podzialem na konkretne produkty. Ta strona pokazuje sie w pasku adresu z nazwa dzialu ktory wybralem z rozszezeniem HTML np www.mojastrona.pl/dzial1,4,4.html. Sa jeszcze jakies 4 po przecinkach dodane. Tego pliku dzial1,4,4.html nie ma na calym serwerze - czyli nie moge sie do niego dostac jak do idex.php. Jak wybiore konkretny produkt pokazuje mi sie podstrona tego produktu z katalogiem do pobrania. Teraz adres w pasku wyglada tak: www.mojastrona.pl/dzial1-produkt1,4,4,1.html - tego pliku rowniez nie ma na serwerze. I puki mam otwarta ta podstrone klikam prawym i pokazuje mi sie jej zrodlo - pliku o takiej zawartosci rowniez nie ma. Zeby edytowac te podstrony musze odpalic baze strony w programie navicat - tam mam tabelki i widze dokladnie tresc podstron ale nie kodu jak to w przyd=padku strony tyt.
To co wkleilem w kodzie html pochodzi wlasnie ze zrodla strony ( prawy przycisk myszki na stronie i opcja "zrodlo" badz "zrodlo strony")- domyslam sie tylko ze jest to kod wygenereowany przez jakis plik php. Widac tam uzycie pliku tmp.php ktorego zawartosc podalem wyzej. To on niby odpowiada za pobranie odpowiednich danych z tabel SQL i uruchomieniu pobierania pdf-a z katalogiem.
Pozdrawiam,
laik