Featured Top
Cos’é standardLib

Si tratta di un framework PHP in grado di gestire con poche righe di codice i principali processi utilizzati nello sviluppo di un'applicazione web.

Questo avviene tramite dei modelli standard sui quali é basato il framework
Cosa sono i modelli

standardLib mette a disposizione delle interfacce per gestire operazioni quali:
  • - Registrazione utenti
  • - Autenticazione
  • - Inivo di email dal sito
  • - Paginazione contenuti
  • - Motori di ricerca
  • - Sicurezza
  • - Upload di file
  • - ...e molto altro

Queste interfacce prendono il nome di modelli
Cosa sono i plugins

Grazie allo sviluppo di plugins è possibile estendere i modelli di standardLib o per crearne dei nuovi.

Le procedure per la creazione di plugin sono esposte nell'apposita sezione.

Upload

Dipendenze: standardTools

Descrizione

Il modello Upload provvede a gestire il processo di upload di un file, verificando parametri di sicurezza e di impostazione come ad esempio:

  • Dimensione del file
  • Estensioni ammesse
  • Abilitare o meno l’overwrite in caso di nomi file uguali
  • Riscrittura del nome file
  • Verifica della legittimità della richiesta
  • Salvataggio nella cartella di destinazione

Lista dei parametri

Parametro Descrizione Default
SavePath La cartella di destinazione dove salvare il file Valore di DEFAULT_SAVE_PATH in config.php
fileName Nome assegnato nel form al campo file uploadFile
OverWrite Nel caso il file caricato abbia lo stesso nome di un file già presente nella cartella sovrascrivere (TRUE) o interrompere (FALSE) TRUE
extensions Estensioni di file ammesse in forma di array. Impostato a “0″ ammette qualsiasi estensione 0
pName Nome del campo form (hidden) utilizzato per far passare una valore atto a verificare che il file arrivi dal nostro form (facoltativo, disattivato se impostato su “0″) 0
pKey Valore del campo (hidden) descritto precedentemente (facoltativo, disattivato se impostato su “0″) 0
size Dimensione massima del file caricato espressa in byte (“0″ per nessun limite) 0
rename E’ consigliabile non salvare i file con il loro nome originale che potrebbero contenere caratteri particolari o spazi con rename attivato (1), il nome del file viene sostituito con una stringa casuale di 20 caratteri 1

Lista dei metodi e delle proprietà

Proprietà – Metodo Descrizione Return
uploadFile() Attiva il processo di upload
uploadErrorReport Se si è verificato un errore ne contiene la descrizione. Se il processo è andato a buon fine contiene FALSE.
filename Contiene il nome assegnato al file Stringa

Esempio minimo

Sarà necessario disporre di un form per il caricamento del file:

Si noti che l’utilizzo del metodo POST è obbigatorio come pure l’enctype settato a multipart/form-data.
A riga 3, viene inserito un campo nascosto dal nome control e con valore upload. Si tratta di un’ulteriore verifica della richiesta e non è obbligatoria. Ma se la si utilizza, bisognerà specificare questi valori in fase di inizializzazione del modello.
Vediamo ora il file upload.php al quale punta il form. Supponiamo di voler accettare unicamente file con estensione gif, jpg e png con una dimensione massima di 100Kb, e di voler salvare il file nella medesima cartella del file upload.php.
Alla vine verifichiamo se il processo è andato a buon fine, e preleviamo il nome del file (che se non altrimenti specificato, viene rinominato).

include_once 'standardLib/engine.php';

_setOptions('fileName' => 'upfile',
	    'SavePath' => './',
	    'size' => 102400,
	    'extensions' => array('gif','png','jpg'),
	    'pName' => 'control',
	    'pKey' => 'upload');

if(isset($_POST['submit']))
{
    $model->uploadFile(); // attiva il modello upload
}
if($model->uploadErrorReport)
{
    echo '

' . $model->uploadErrorReport . '

';
}
else
{
    echo '

File caricato correttamente e rinominato in ' . $model->filename . '

';
}