Claudiogarau.it :: Tutorials & Scripts, PHP, Linux and more. :: Mappa del sito
Tutorials & Scripts, PHP, Linux and more.

Home :: Php :: Indice Php

Upload dei file in MySQL

Inserito il: 02-05-2006


Per l'invio delle immaginii file nella nostra tabella denominata "immagini", utilizzeremo il classico sistema basato su un form per l'invio dei parametri di input e di un sorgente PHP dedicato all'elaborazione di questi ultimi.

Nel caso specifico, creeremo una funzione destinata alla raccolta dei dati tramite form e all'inserimento di questi ultimi nel database:
<?
function upload()
{
  $result = false;
  $immagine = '';
  $size = 0;
  $type = '';
  $nome = '';
  $max_size = 300000;
  $result = @is_uploaded_file($_FILES['file']['tmp_name']);
  if (!$result)
  {
    echo "Impossibile eseguire l'upload.";
    return false;
  }else{
    $size = $_FILES['file']['size'];
    if ($size > $max_size)
    {
      echo "Il file è troppo grande.";
      return false;
    }
    $type = $_FILES['file']['type'];
    $nome = $_FILES['file']['name'];
    $immagine = @file_get_contents($_FILES['file']['tmp_name']);
    $immagine = addslashes ($immagine);
    @include 'config.php';
    $sql = "INSERT INTO immagini (nome, size, type, immagine) 
VALUES ('$nome','$size','$type','$immagine')";
    $result = @mysql_query ($sql) or die (mysql_error());
    return true;
  }
}
?>
L'impianto della funzione upload() è abbastanza semplice, in pratica lo script riceve i dati dal form, controlla che l'upload sia avvenuto correttamente tramite la funzione is_uploaded_file(), quindi, esegue un secondo controllo sulla grandezza dell'immagine che non deve superare i 30.000 byte.

Una volta eseguite le opportune verifiche, la funzione da il via alla query d'inserimento dei dati all'interno della tabella. Da notare come le informazioni relative all'immagine vengano raccolte tramite la superglobale $_FILES, mentre i contenuti binari del file sono estrapolati tramite la funzione file_get_contents().

Nello script viene richiamato, tramite un'inclusione, anche il classico file di configurazione contenente i parametri necessari alla connessione a MySQL e alla selezione del database:
<?
$host = 'localhost';
$username = 'user';
$password = 'password';
$db = 'img';
$conn = @mysql_connect($host,$username,$password) or die (mysql_error());
$sel = @mysql_select_db($db) or die (mysql_error());
?>
Attenzione: questo articolo è stato concesso in esclusiva per la pubblicazione a Mrwebmaster.it; ne è vietata la riproduzione,
anche parziale, senza l'esplicito consenso dell'autore e della redazione di Mrwebmaster.it.


Indice Php
Apache (19)
CGI (11)
Java (12)
Jsp (16)
Linux (18)
Manuali (6)
Perl (12)
PostgreSQL (12)
Tomcat (10)
Unix (12)
Libri (0)
Forum



Trucchi per l'utilizzo del metodo POST con PHP
Come ha scritto il mio amico Luca Ruggero in un suo bell'articolo, esistono fondamentalmente due metodi per utilizzare il... Leggi l'articolo


Corsi per Webmaster, Web Designer, Programmatori, Grafici e Sistemisti

Mrwcorsi.it
Mrwebmaster.it
4 You Gratis.it
Ceptive.it
Giochi Gratis
Pierotofy.it
Giornale Webmaster
Manuali
Morpheusweb.it
SEO Directory
Visual designer
Forum per Webmaster




Pagina caricata in 0.0001 secondi. | Per informazioni | ©CG di Claudio Garau P.IVA 03219430927 RSS