Il form di invio deve contenere
Codice HTML:
<form method="post" action="send.php" enctype="multipart/form-data">
<!-- Vari campi -->
Immagine <input class="camp" name="file_send" type="file" />
<input type="submit" value=" Invio " />
</form>
Mentre la pagina send.php
Codice PHP:
$Reply = upload($dir = "directory_file_ricevuti/", $tipo = FALSE, $dim = FALSE, $debug = FALSE);
$code_reply = "\r\n<p>$Reply</p>";
echo $code_reply;
La funzione upload richiamata è questa:
Codice PHP:
/**
* Funzione per effettuare l'upload
*/
function upload($dir = "directory_file_ricevuti/", $tipo = FALSE, $dim = FALSE, $debug = FALSE)
{
//Impostare la path assoluta del proprio sito
$source_dir = "/var/www/site/home/......etc";
if(!is_uploaded_file($_FILES['file_send']['tmp_name']))
{
$echo = "Nessun file selezionato da inviare al server";
#exit();
}
if(is_uploaded_file($_FILES['file_send']['tmp_name'])){
//Funzione di debug
if($debug != FALSE){
print_r($_FILES);
}
//Controllo che il file non esista nella destinazione
if (is_file($source_dir.$dir.$_FILES['file_send']['name'])){
$echo = "Esiste già un file con lo stesso nome!<br />
Rinominarlo e tentare nuovamente!";
#exit();
}
//Controllo il tipo di file se ne ho definito uno o più obbligatori
if($tipo != FALSE) {
if(is_array($tipo)) {
if(!in_array($_FILES['file_send']['type'],$tipo)) {
$echo = "Tipo file non consentito";
#exit();
}
} else {
if($_FILES['file_send']['type'] != $tipo) {
$echo = "Tipo file non consentito";
#exit();
}
}
}
//Controllo che le dimensioni non superino il massimo consentito
if($dim != FALSE) {
$dimz = $dim * 1024000;
if($_FILES['file_send']['size'] > $dimz) {
$echo = "Il file che si sta cercando di inviare è troppo grande!<br />
la dimensione massime consentita è di " . $dim . " megabyte";
#exit();
}
}
//Controllo che la directory di destinazione sia server writable
if(!is_writable($source_dir.$dir)) {
$echo = "Non si dispone dei permessi necessari!<br />
Contattare l'amministratore del sistema e far settare i permessi della directory <i>" . $dir . "</i> a 0777";
#exit();
}
//Passati tutti i controlli posso inviare il file al server!
if(move_uploaded_file($_FILES['file_send']['tmp_name'], $source_dir.$dir.$_FILES['file_send']['name'])) {
$echo = "Il file è stato inviato correttamente al server!";
}
}
return($echo);
}
Tutto qui | | | |
| | PHP | E' una piattaforma trasversale lato server scripting language utilizzata per la creazione di pagine web dinamiche | | |
| | | |
| | | |
| | Server | Ogni coppia hardware-software che fornisce appunto servizi ad utenti chiamati tradizionalmente clienti (clients) attraverso una rete. | | |
| | | |
| | | |
| | debug | L'attività di ricerca e correzione degli errori logici che si manifestano utilizzando un software. Svolta sia da umani - programmatori e utenti occasionali - sia da specifici programmi, detti 'debuggers'. | | |
| | | |