Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Zapisywanie na serwer oryginalnej nazwy pliku z serwera zdalnego
reki
post 29.04.2013, 09:45:21
Post #1





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 4.01.2008

Ostrzeżenie: (0%)
-----


Witam,
Pobieram z dynamicznego linka plik mp3, zapisuje mi go pod nazwa s.1, później zmieniam go na pobrana z http_response_header[6] nazwę pliku.
Sposób ten staje się nieskuteczny, pobiera tylko jedna nazwę pliku, nie pobiera następnej w pętli, przez co mam ściągnięty jeden plik, później wywala błąd:

  1. Warning: rename(s.1,) [function.rename]: No such file or directory in public_html/sciagarka/index.php on line 24
  2.  
  3.  
  4. Fatal error: Cannot redeclare oddo() (previously declared in public_html/sciagarka/index.php:18) in public_html/sciagarka/index.php on line 18

.

Istnieje inny sposób, aby ściągnąć plik mp3 z poniższego linka z zachowaniem jego oryginalnej nazwy? (taka jak przy pobieraniu przez przeglądarkę).


  1. for($i=4036;$i<4050;$i++)
  2. {
  3. copy('http://www.adres.pl/search/download_file.php?id='.$i.'&dur=0&type=mp3', 's.1');
  4.  
  5. $nazwa_pliku=$http_response_header[6];
  6. function oddo($nazwa_pliku,$od,$do)
  7. {
  8. eregi($od.'.*'.$do,$nazwa_pliku,$tmp);return eregi_replace($od.'|'.$do,'',$tmp[0]);
  9. }
  10.  
  11. $wartosc = oddo($nazwa_pliku,'filename="','"');
  12. rename("s.1", $wartosc);
  13. print $wartosc."<br>";
  14. }


z góry dziękuje za odpowiedź smile.gif

Ten post edytował reki 29.04.2013, 09:46:40
Go to the top of the page
+Quote Post
ssstrz
post 29.04.2013, 10:11:19
Post #2





Grupa: Zarejestrowani
Postów: 103
Pomógł: 17
Dołączył: 15.12.2012

Ostrzeżenie: (0%)
-----


Linijkę: 3 z listingu 2 zmień na:
  1. copy('http://www.adres.pl/search/download_file.php?id='.$i.'&dur=0&type=mp3', ('s.'.($i-4035)));
Go to the top of the page
+Quote Post
reki
post 29.04.2013, 10:16:54
Post #3





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 4.01.2008

Ostrzeżenie: (0%)
-----


Zmieniłem, lecz ten sam efekt co wyżej,

Skrypt działa następująco, na koncie ftp tworzy plik
s.1 (pobiera go w calosci)
zmiena nazwe pliku na pobrana z $http_response_header[6];
utworzenie pliku s.2 - pobranie go w calosci

wyrzucenie błędu:
Warning: rename(s.1,Wherever You Are.mp3) [function.rename]: No such file or directory in public_html/sciagarka/index.php on line 24

Fatal error: Cannot redeclare oddo() (previously declared in public_html/sciagarka/index.php:18) in public_html/sciagarka/index.php on line 18


Nie istnieje jakas prostrza metoda?
Go to the top of the page
+Quote Post
ssstrz
post 29.04.2013, 10:37:50
Post #4





Grupa: Zarejestrowani
Postów: 103
Pomógł: 17
Dołączył: 15.12.2012

Ostrzeżenie: (0%)
-----


  1. for($i=4036;$i<4050;$i++)
  2. {
  3. copy('http://www.adres.pl/search/download_file.php?id='.$i.'&dur=0&type=mp3',('s.'.($i-4035)));
  4.  
  5. $nazwa_pliku=$http_response_header[6];
  6.  
  7.  
  8. $wartosc = oddo($nazwa_pliku,'filename="','"');
  9. rename(('s.'.($i-4035)), $wartosc);
  10. print $wartosc."<br>";
  11. }
  12.  
  13. //deklaracja
  14. function oddo($nazwa_pliku,$od,$do)
  15. {
  16. eregi($od.'.*'.$do,$nazwa_pliku,$tmp);return eregi_replace($od.'|'.$do,'',$tmp[0]);
  17. }


Ten post edytował ssstrz 29.04.2013, 10:42:01
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 12.06.2025 - 11:06