Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    Copiare ultima immagine su directory remota

    Ciao ragazzi,
    preciso che sono un novello sulla programmazione in PHP.

    Ho la necessità di copiare l'ultima immagine inserita in una directory su un sito remoto.

    Facendo varie ricerche sono arrivato ad avere il seguente codice :

    codice:
    // La prima sezione serve per vedere se è presente una directory sul server locale, altrimenti viene creata
    
    <?php 
     $intDir=$_SERVER['DOCUMENT_ROOT'].'/dir_1/sub_dir/test';
    
    
         if (is_dir($intDir))     {    echo "La cartella esiste!";     } 
    
    
        else 
        { $oldmask = umask(0);  mkdir($intDir, 0777, true);  umask($oldmask); echo "Directory creata";    }
    
    
    
    
    
    
    // la seconda fase va ad aprire una directory sul dominio remoto e va a prendere l'ultima immagine che è stata inserita
    
    
    
    set_time_limit(300);
    echo "aaa";
    
    
    
    
    // trova l'ultimo file remoto
    
    
                            $dir = '/directory_server/';
                    $base_url = 'http://www.miosito/upload';
                    $newest_mtime = 0;
                    $show_file = 'BROKEN';
                    if ($handle = fopen("$dir","r")) {
                    while (false !== ($file = readdir($handle))) {
                    if (($file != '.') && ($file != '..')) {
                        $mtime = filemtime("$dir/$file");
                        if ($mtime > $newest_mtime) {
                        $newest_mtime = $mtime;
                        $show_file = "$base_url/$file";
                        }
                        }
                        }
                        }
                        
    
    
    // terza ed ultima sezione. trovato l'ultimo file lo prende e lo copia in una directory nel server locale
    
    
    //Percorso file remoto
    $remotefile = "$base_url/$file";
    
    
    //Cartella locale in cui copiare il file
    $cartella="directory_server/";     // cartella dove mettere immagini
    
    
    //apro il file remoto da leggere
    $srcfile1 = fopen("$remotefile", "r");
    
    
    //prelevo il nome del file
    $nomefile=basename($remotefile);
    
    
    //apro il file in locale
    if (!($fp1 = fopen($cartella.$nomefile,"w")));
    
    
    //scrivo contenuto del file remoto, ora in temp file, in file locale
    while ($contents = fread( $srcfile1, 8192 )) {
        fwrite( $fp1, $contents, strlen($contents) );
    }
    
    
    //chiudo i due files
    fclose($srcfile1);
    fclose($fp1);
    ?>

    Mi sono fermato al punto dove c'è il comando "opendir()" in quanto ho visto che lo stesso non supporta un URL remoto ... quindi http:// ma solo cartelle locali. Ho provato anche con fopen() ma non ho avuto alcun risultato.

    Ho preferito non usare la modalità tramite ftp in quanto le credenziali in tale script potrebbero essere facilmente visionate.

    Quale comando prevede l'uso di http per aprire la directory remota ???

    Grazie

  2. #2
    Moderatore di Off Topic, Kickstarter e XML L'avatar di Sky
    Registrato dal
    Jul 2000
    residenza
    Roma
    Messaggi
    1,053
    [ho letto male il messaggio e ho scritto una cosa inutile, pardon]
    Ultima modifica di Sky; 20-08-2014 a 12:45
    Lo Stato deve dare ai cittadini, come diritto, ciò che la mafia dà come favore.
    Carlo Alberto dalla Chiesa

    Facebook | Twitter | Last.fm | LinkedIn | Quora

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.