Mappa tartalmának másolása PHP-vel
Sziasztok !
Van egy tételem, amire sehol nem találtam megoldást, hátha itt valaki tudna segíteni.
A felhasználó által kiválasztott MAPPA TARTALMÁT kell átmásolni egy másik, szintén felhasználó által megadott helyre.
Nem tudom, PHP-ban megvalósítható-e egyáltalán.
Köszönöm előre is a segítséget !
■ Van egy tételem, amire sehol nem találtam megoldást, hátha itt valaki tudna segíteni.
A felhasználó által kiválasztott MAPPA TARTALMÁT kell átmásolni egy másik, szintén felhasználó által megadott helyre.
Nem tudom, PHP-ban megvalósítható-e egyáltalán.
Köszönöm előre is a segítséget !
Szerver oldalon
Amennyiben a klien a saját gépén szeretne fájlokat másolni, azt vagy kliens oldali PHP-val lehet megoldani - a felhasználó a saját gépén futtatja a PHP-t, nem a böngészőjében. Amennyiben ez nem kivitelezhető, akkor lehetséges még aláírt Java applet is, aminek a felhasználó jogot ad, hogy hozzáférjen helyi fájlokhoz. Ezen kívül ha mégis mindenképpen böngészőben akarja csinálni, akkor esetleg lehet írni böngésző plugin-t, ami szintén hozzá tud férni a kliens fájljaihoz, mappáihoz.
Megvalósítható
google?
http://www.visible-form.com/blog/copy-directory-in-php/
http://www.php.net/manual/en/function.copy.php#91010
Ezek szerint alap függvény nincs rá.
Copy
nincs konkrétan meghatározva, nem kell program
Nincs a feladatban meghatározva, hogy kliens vagy szerver oldalon akarunk másolni.
Tehát az egyszerűbb megoldás érdekelne, gondolom a szerver oldali lesz az.
Mivel szóbeli a tétel, ezért megfelelne egy algoritmus is, amiből ki tudok már indulni. Nem kell a programot megcsinálnom.
Köszönöm még egyszer, nagyon sokat segítettetek.
faék
oh most látom, hogy szóbeli tételről van szó..
Ez helyes?
Formban másolandó mappanév megadása, másolás helyének megadása;
Másolandó mappa megnyitása opendir();
Mappa tratalmának kiolvasása readir();
Új mappa létrehozása a megadott helyen mkdir();
Fájlok másolása a megadott helyre, a létrehozott mappába copy();
Eredeti mappa bezárása closedir();
Vége;
Azt tudom, hogy ez a gyakorlatban még kevés, hiszen az ellenőrzések és védelmek hiányoznak, de ezek nekem nem is kellenek, mivel a tétel sem kéri.
A kérdésem, a fenti elgondolás helyes-e, vagy kimaradt valami?
Ez a szkript nem rekurzív, de most nekem elég volt, hátha segít
{
//ha egyáltalán van miből másolni
if (is_dir($dir_source))
{
//létrehozom az új mappát, ha nincs
if(!is_dir($dir_target))mkdir($dir_target);
if ($dir_source_azon = opendir($dir_source))
{
while (false !== ($fajl = readdir($dir_source_azon)))
{
if ($fajl != "." && $fajl != "..")
{
copy($dir_source."/".$fajl,$dir_target."/".$fajl);//fájlt másolom
}
}
}
closedir($dir_source_azon);
}
}
flame
//létrehozom az új mappát, ha