Upload di immagine tramite url

Creato il 01 gennaio 1970 da Decadeweb @simone_marchese

Con il seguente tutorial andremo a sviluppare l'upload di un singolo file tramite il suo url.
Grazie a questa funzionalità potremo utilizzare un file, online, e salvarlo nel nostro server.
Andiamo ad analizzare di cosa necessità lo script:
- upload.php (permetterà l'inserimento dell'url al cliente)
- uploadFile.php (recuperiamo l'url passato permettendo cosi il salvataggio del file sul proprio server)

Iniziamo subito a creare il file upload.php


<input name="sAction" type="hidden" value="action" />
Url immagine <input name="url_file" size="32" type="text" />
<input type="submit" value="Carica" />
</form>

Sviluppato il file upload.php passiamo alla creazione del file uploadFile.php

if($_POST["sAction"]){
$url = trim($_POST["url_file"]);
if($url){
$file = fopen($url,"rb");
// recupero il nome del file
$nomeFile = basename($url);
// Recupero la dimesnione del file<
$size =  file_get_contents($url);
$byte = (strlen($size))/1024;
$dimensione = substr($byte,0,5);
if($file){
$valid_exts = array("jpg","jpeg","gif","png");
//recupero l'estensione del file
$ext = end(explode(".",strtolower(basename($url))));
if(in_array($ext,$valid_exts)){
$newfile = fopen("../uploads/".basename($url), "wb");
// modifica "uploads" con la cartella desiderata
if($newfile){
while(!feof($file)){
// scrivo il file nella propria directory
fwrite($newfile,fread($file,1024 * 8),1024 * 8);
}
}else{ echo"Errore nell'inserimento"; }
echo"Il file $nomeFile è stato inserito correttamente";
}
}
}
}

Grazie a questi due file abbiamo eseguito un upload di immagine tramite l'url.
Direi che questo strumento è utilissimo per chi lavora con i vari cms o chi crea cms personalizzati per i propri clienti.


Autore

Sviluppatore web, aree riservete e gestionali.
Svolgo con passione e determinazione il proprio lavoro dedicando tempo alla ricerca e all'approfondimento di novità.


Sito web dell'autore

Potrebbero interessarti anche :

Possono interessarti anche questi articoli :