workfetch

Akiro 04.07.01 13:58

Hakee kaikki Saunalahden workissa tällä hetkellä olevat tiedostot

 Tekstiversio  Arvo: -2 (4 ääntä)  Äänestä: +  -
<?php
        set_time_limit(0)// aikarajoitus pois, tämä KESTÄÄ
        $dir = "/tmp/"//minne tiedostot tallennetaan
        $file = fopen("http://www.saunalahti.fi/workl/work.txt","r")// lista workin fileistä
       
        //kaikkien tiedostojen nimet laitetaan $worklist-taulukkoon
        $worklist = array();
        while(!feof($file)) {
                $line = fgets($file,10000);
                if(!ereg("^!header",$line)) {
                        $tmp = explode("        ",$line);
                        array_push($worklist,$tmp[0]);
                }
        }
       
        //kaikkien tiedostojen nimet (ilman polkua workissa) laitetaan $filenames-taulukkoon
        $filename = array();
        for($i=0;$i<count($worklist);$i++) {
                $tmp = explode("/",$worklist[$i]);
                $filenames[$i] = $tmp[count($tmp)-1];
        }

        //otetaan ftp-yhteys ja ja haetaan kaikki tiedostot.
        $ftp_id = ftp_connect("work.sci.fi");
        $ftp_login = ftp_login($ftp_id,"kayttajanimi","salasana");
        if(!$ftp_id || !$ftp_login) die("Login failed");
        else echo "<b>Logged in...</b><br>
"
;
        for($i=0;$i<count($worklist);$i++) {
                $download = ftp_get($ftp_id,$dir.$filenames[$i],$worklist[$i],FTP_BINARY);
                if (!$download) echo "Download failed for: ".$worklist[$i]."<br>";
                else echo "Downloaded: ".$worklist[$i]."<br>";
        }
        ftp_quit($ftp_id);
?>