![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 6.10.2004 Ostrzeżenie: (0%) ![]() ![]() |
Robię baze danych plikow audio zgromadzonych na dysku. Potrzebne mi są ścieżki do plików, które za pomocą formularza
wgrywam do bazy danych MySQL. Problem jest następujący: W Explorerze i Operze na PC wszystko jest ok. Ścieżka do pliku wybierana z pola file przesyłana jest do bazy z lekką obróbką:
Natomiast w Safari na Mac pole file wygląda zupełnie inaczej. Nie ma tam pola tekstowego tylko sam przycisk Browse, a po wybraniu pliku ukazuje się obok jedynie nazwa pliku bez ścieżki. Skrypt przestaje funkcjonować - plik dodaj.php otwiera się bez żadnych zmiennych przesyłanych z formularza (nie ma w polu adresu dodaj.php?filename=costam.wav&typ=atmosfery..... itd). Dlaczego tak się dzieje? Czy można w jakiś sposób pozyskać z formularza w Safari na mac'u ściężkę do pliku i przesłać ją do bazy danych MySQL? Proszę o pomoc |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 6.10.2004 Ostrzeżenie: (0%) ![]() ![]() |
Już doszedłem do wniosku, że pliki będą na serwerze, czyli na dysku przypisanym w Apache jako document.root, więc pliki będzie można bez problemu odtwarzać i otwierać. Póki co to będzie tylko na jednym komputerze bez dostępu do żadnej sieci, internetu itp. ze względów bezpieczeństwa danych, wirusów itp. Ścieżka do pliku jest konieczna, bo te pliki nie będą tylko do słuchania, ale też do pracy montażowej w aplikacjach audio. Najlepiej gdyby dało się po wyszukaniu pliku (oprócz posłuchania i zobaczenia ścieżki jak się do pliku dostać) otworzyć folder, w którym plik się znajduje i to jeszcze zaznaczony - już w środowisku systemowym. Wtedy już zostałoby tylko przeciągnąć plik do programu montażowego...
Chociaż właściwie, jeśli będzie wyświetlona ścieżka (poddana małej edycji - dodana litera dysku z przodu) to wystarczy ją zaznaczyć i skopiować do okienka importu pliku audio w programie do montazu. Na macu jest o tyle dobrze, że nie trzeba grzebać w folderach tylko ścieżkę można wpisać od razu. Znalazłem fajny skrypt, który wypisuje listę plików wraz z linkami do nich i zwraca ścieżkę do pliku w postaci zmiennej $kat. Jedyny mankament jest taki, że jak się wejdzie do jakiegos folderu to link do pliku już sie nie zgadza, bo nie ma zmiennej opisującej scieżkę bezwzględną poprzedzającej nazwę pliku $plik. Kod <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title>Lista plikow</title> </head> <body> <?php $kat = $_GET['katalog']; if (empty($kat)) $kat = "."; else $kat = realpath($kat); echo "Zawartosc katalogu : " . $kat . "<br>"; echo "<hr><br>"; $katalog = dir($kat); while($plik = $katalog->read()){ if (is_dir($kat . "/" . $plik)) { echo "<A HREF='kat.php?katalog=$kat/$plik'>[" . $plik . "]</A><BR>"; } else { echo "<A HREF='" . $plik . "'>" . $plik . "</A><BR>"; } } $katalog->close(); ?> </body> </html> Ale jak trochę pomyślę to wymyślę... Teraz ide w kime. Pozdrawiam Rozwiązałem zagadkę: Między liniki Kod $kat = $_GET['katalog']; wstawiłem if (empty($kat)) Kod $sciezka = $kat; A linie Kod echo "<A HREF='" . $plik . "'>" . $plik . "</A><BR>"; zamieniłem na Kod echo "<A HREF='".$sciezka."/".$plik."'>" . $plik . "</A><BR>"; Może się komuś przyda. Dobranoc. Sorry. Nie przetestowałem tego w pełni. Jednak to nie takie proste. $sciezka zwraca rozne dziwne historie... które raz są ok a raz nie... wiec będzie to trzeba zrobić inaczej. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 3.10.2025 - 02:40 |