Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php]Kopiowanie zawartości katalogu
Thymson
post 28.06.2007, 19:10:00
Post #1





Grupa: Zarejestrowani
Postów: 40
Pomógł: 0
Dołączył: 27.12.2006

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


Tak jak w temacie - jest jakaś funkcja (albo jak taką napisać), która kopiowałaby zawartość katalogu z podanego adresu w polu ? Czyli user podaje adres np. http://www.domena.pl/fotki/, a skrypt przenosi zawartość tego katalogu na serwer (do wybranej lokalizacji)...


--------------------
Go to the top of the page
+Quote Post
mike
post 28.06.2007, 19:28:19
Post #2





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Zacznijmy od tego czy masz dostęp do tego serwera?
Login, hasło, ... ?

Jeśli nie to zapomnij. Wyobrażasz sobie jakbym podał adres onet.pl i niech mi skrypt kopiuje.
Trochę wyobraźni na temat bezpieczeństwa tongue.gif
Go to the top of the page
+Quote Post
UDAT
post 28.06.2007, 19:31:29
Post #3





Grupa: Zarejestrowani
Postów: 442
Pomógł: 0
Dołączył: 27.12.2005

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


Jeśli masz tam jakąś określoną stronę, np zwykłe wylistowanie Apache'a to możesz pobawić się preg'ami.
Jeśli nie to możesz napisać jakiegoś pająka ( tylko jak zauważył mike nie ma to większego sensu )
Go to the top of the page
+Quote Post
Thymson
post 28.06.2007, 19:47:25
Post #4





Grupa: Zarejestrowani
Postów: 40
Pomógł: 0
Dołączył: 27.12.2006

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


Dokładniej to chodzi o wyciąganie fotek z tych katalogów... Potrzebne to do galerii...


--------------------
Go to the top of the page
+Quote Post
mike
post 28.06.2007, 19:57:56
Post #5





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Masz dostęp?
Jeśli nie to powtarzam: nie da się.
No chyba, że znasz dokładnie nazwy wszystkich elementów znajdujących się w danym katalogu.

A poza tym od razu przyznaj (podejrzewam to na 99%), że chcesz kogoś okraść.
Go to the top of the page
+Quote Post
doseo
post 28.06.2007, 23:58:00
Post #6





Grupa: Zarejestrowani
Postów: 28
Pomógł: 3
Dołączył: 23.01.2007
Skąd: Dys/Lublin

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


  1. <?php
  2.  
  3. function zarznijserwery( $url, $aktualny_folder = 'mirror' )
  4. {
  5. $file = file( $url );
  6. $html = implode( ' ', $file );
  7.  
  8. preg_match_all( '|<img src="(.*)" alt="[(.*)]"> <a href="(.*)">(.*)</a>|', $html, $wynik, PREG_SET_ORDER );
  9.  
  10. foreach ( $wynik as $v )
  11. {
  12. if ( $v[2] == 'DIR' && $v[4] != 'Parent Directory' )
  13. {
  14. mkdir( $aktualny_folder . '/' . substr( $v[3], 0, -) );
  15. print "Utworzono folder " . $aktualny_folder . '/' . substr( $v[3], 0, -1 ) . "<br />n";
  16. zarznijserwery( $url . $v[3], $aktualny_folder . '/' . substr( $v[3], 0, -) );
  17. }
  18. elseif ( $v[2] != 'DIR' )
  19. {
  20. copy( $url . $v[3], $aktualny_folder . '/' . $v[3] );
  21. print "Skopiowano " . $url . $v[3] . " do " . $aktualny_folder . '/' . $v[3] . "<br />n";
  22. }
  23. }
  24. }
  25.  
  26. zarznijserwery( 'http://localhost/test/' );
  27. ?>

Przy kopiowaniu nie uwzględnia daty utworzenia pliku.
Zamiast funkcji: file(), copy() należy użyć bardziej wyrafinowanych metod.
Na moim lokalhoscie działa:) Testowałem na tym samym folderze co mam skrypt i wyszło mi coś takiego:
Kod
mirror/mirror/mirror/mirror/mirror/mirror/mirror/mirror/mirror/mirror/mirror/mirror/mirror/mirror/mirror/mirror/mirror/mirror/mirror/mirror/mirror/mirror/mirror/mirror/mirror/mirror/mirror/mirror/mirror

chodziło by w nieskończoność gdyby nie zabezpieczenia windowsowe;)
Cytat(mike @ 28.06.2007, 20:57:56 ) *
A poza tym od razu przyznaj (podejrzewam to na 99%), że chcesz kogoś okraść.

Wszelkie materiały zamieszczone w tym poście mają charakter tylko i wyłącznie szkoleniowy. Autor nie bierze odpowiedzialności za wykorzystanie powyższych materiałów do celów niezgodnych z prawem Polskim.*

*To tak na wszelki wypadek jak by prokurator chciał mi dać współudział.
Go to the top of the page
+Quote Post
deirathe
post 29.06.2007, 07:08:52
Post #7





Grupa: Zarejestrowani
Postów: 426
Pomógł: 32
Dołączył: 24.05.2007

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


To raczej nie zadziała tongue.gif


--------------------
Kawałek mojego blogu
Everything should be as simple as possible but not simpler.
A Einstein
Go to the top of the page
+Quote Post
Thymson
post 29.06.2007, 09:49:01
Post #8





Grupa: Zarejestrowani
Postów: 40
Pomógł: 0
Dołączył: 27.12.2006

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


Jasne... Nie chcę nikogo okradać, chodzi o to, że do galerii trudno wrzucać zdjęcia pojedynczo... Nie przeszkadzało by mi to, że podany katalog znajduje się na moim serwerze, do którego mam login hasło.


--------------------
Go to the top of the page
+Quote Post
doseo
post 29.06.2007, 14:32:50
Post #9





Grupa: Zarejestrowani
Postów: 28
Pomógł: 3
Dołączył: 23.01.2007
Skąd: Dys/Lublin

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


Cytat(deirathe @ 29.06.2007, 08:08:52 ) *
To raczej nie zadziała tongue.gif

Milo by było jak byś podał jakieś bliższe informacje.
Go to the top of the page
+Quote Post
deirathe
post 29.06.2007, 15:42:04
Post #10





Grupa: Zarejestrowani
Postów: 426
Pomógł: 32
Dołączył: 24.05.2007

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


Po prostu tylko to sprawdziłem z ciekawości w kod się nie zagłębiałem, ale jak tylko wrócę z pracy do domku to posiedzę nad tym ;]
A i żeby nie było sprawdzałem to na swoich serverach próbowałem z jednego przekopiować do drugiego no ale nie poszło:P

Ten post edytował deirathe 29.06.2007, 15:43:10


--------------------
Kawałek mojego blogu
Everything should be as simple as possible but not simpler.
A Einstein
Go to the top of the page
+Quote Post
cinekz
post 29.06.2007, 15:56:32
Post #11





Grupa: Zarejestrowani
Postów: 50
Pomógł: 6
Dołączył: 15.06.2006

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


Jak chcesz wrzucać zdjęcia grupowo do galerii, to zrób czytanie z zipów. Ktoś na swoim komputerze przygotowuje archiwum z fotkami. Ty przygotowujesz panel, gdzie ten ktoś może sobie zuploadować te archiwum, a ty po stronie serwera phpem je rozpakowujesz. Tyle. Ja u siebie to tak rozwiązałem.
Go to the top of the page
+Quote Post
Thymson
post 29.06.2007, 17:32:43
Post #12





Grupa: Zarejestrowani
Postów: 40
Pomógł: 0
Dołączył: 27.12.2006

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


Dzięki smile.gif


--------------------
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: 19.07.2025 - 07:55