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

    Upload file e immagini con db

    Salve a tutti
    Volevo postare questo codice Perfettamente finzionante che permette l'upload di file Pdf o immagini con Db

    Codice PHP:
    <?
    require_once("config.php"); 
    $directory "menu/";
    // inseriamo le dimensioni massime consentite per l'upload
    // massimo peso
    $max_file_size 1110240;
    // massima larghezza
    $max_width 1300;
    // altezza massima
    $max_height 11100;

    //La parte seguente di codice verifica se esiste il valore "upload" in POST
    //In caso contrario viene visualizzato il form per l'upload dell'immagine


    if(!isset($_POST['upload'])){    
     echo 
    "<form action='uploadimage.php' method='post' enctype='multipart/form-data'>    
     Titolo Menu*:    
        
     <input type='text' name='titolo' />    
     
     Prezzo Menu:    
        
     <input type='text' name='prezzo' />    
         
      Tipo Menu*:    
       
      <select name='tipomenu' size='1'>
                    <option value='0'>&gt;Seleziona&lt;</option>
                    <option value='1'>Eventi</option>
                    <option value='2'>Altri menu</option>
                </select>    
     
     Scegli menu da caricare:    
        
     <input type='file' name='immagine' />    
        
     <input type='submit' name='upload' value='Carica Immagine' /></form>    "
    ;

    // enctype='multipart/form-data' all'interno del tag form è fondamentale per l'upload dell'immagine


    elseif(isset($_POST['upload'])){    
    // prendo il timestamp per dare un nome casuale al file dell'immagine
    $timestamp time();    
    $titolo mysql_real_escape_string($_POST['titolo']);    
    $tipomenu mysql_real_escape_string($_POST['tipomenu']); 
    $prezzo mysql_real_escape_string($_POST['prezzo']); 
    $dimensioni getimagesize($_FILES['immagine']['tmp_name']);    
    $larghezza $dimensioni[0];  
    $altezza $dimensioni[1];    


    //costruisco l'array degli errori
    $errors = array();    
    // if(empty($nomeimmagine) || empty($dimensioni))    {       
    if(empty($nomeimmagine))    {  
     
    $errors[] = 'Non hai inserito un nome al menu.';
    }    
    if(empty(
    $_FILES['immagine']['name']))    {        
     
    $errors[] = 'Non hai inserito l\'immagine per il caricamento';    
    }   
    if(empty(
    $tipomenu))    {        
     
    $errors[] = 'Non hai selezionato il tipo di menu'
    }  

    //verifico se il file è stato caricato correttamente 
    if(!is_uploaded_file($_FILES['immagine']['tmp_name']))    {        
     
    $errors[] = 'Si sono verificati errori durante l\'upload.';    
    }    
    if(
    $_FILES['immagine']['size'] > $max_file_size)    {        
     
    $errors[] = 'Immagine troppo pesante la dimensiome massima consentita è: [b]' $max_file_size '[/b] bytes.';    



    // Verifico se l'immagine è di tipo jpeg o gif

    //$type=$_FILES['immagine']['type'];
    //if($type != "image/gif" && $type != "image/pjpeg" && $type != "image/jpeg")    {        
    // $errors[] = 'L\'immagine deve essere del formato JPEG o GIF.';    
    //}  

    // Verifico se l'immagine è di tipo Pdf

    $type=$_FILES['immagine']['type']; 
    if(
    $type != "application/pdf")    {         
    $errors[] = 'Il file deve essere del formato PDF.';     
    }

    // controllo le dimensioni dell'immagine   
    if($altezza $max_width)    {        
     
    $errors[] = 'L\'altezza della tua immagine è troppo grande';    
    }    
    if(
    $larghezza $max_width)    {        
     
    $errors[] = 'La tua immagine è troppo larga.';    
    }    


    // Se ci sono stampo gli errori

    if(count($errors) > 0)    {        
     echo 
    '[b]ERRORI:[/b]
    '
    ;        
     foreach(
    $errors as $err)        {            
     echo 
    $err '

     Riprova...'
    ;        
     }    
    }   
    //altrimenti effettuo l'upload
    else    {       
     
    $urlimmagine $directory.$_FILES['immagine']['name'];
     
    $menu =$_FILES['immagine']['name'];
     
    //$urlimmagine = $directory. time() . '_' . $_FILES['immagine']['name'];
     //inserisco l'immagine nella directory e se tutto va bene nel database
     
    if(copy($_FILES['immagine']['tmp_name'], $urlimmagine)) { 
       
    mysql_query("INSERT INTO eventi (titolo, menu, tipomenu, prezzo, urlimmagine) VALUES ('$titolo', '$menu', '$tipomenu', '$prezzo', '$urlimmagine')");                
    //   echo 'L\'immagine è stata caricata con successo. [url="' . $urlimmagine . '"]Clicca qui per vedere l\'immagine[/url].
    Torna dietro'; }        
       echo '
    L\'immagine è stata caricata con successo. [url="index.php"]Vai alla lista dei menu[/url].
    '
    ; }        
     else 
       echo 
    'Si sono verificati errori durante il caricamento dell\'immagine.';
                
    }

    ?>
    Chiedo se gentilmente qualcuno riesce a creare una pagina simile che pero permetta la modifica di un record

    Spero sia utile e che possiate aiutarmi
    Scusate sto imparando!

  2. #2
    il codice html è pressochè uguale..basta che fai una select * all'inizio impostando il campo WHERE per esempio con l'id del record...poi ai campi input text imposti il value = [il campo (ex titolo) che estrapoli dal risultato della query]..per la select è un po diverso poiche non puoi impostare il campo value, cosi per ogni option devi fare una if...mi spiego meglio


    Codice PHP:
    <select name='tipomenu' size='1'> 
                  
                    <option value='0'>&gt;Seleziona&lt;</option> 
                    <option value='1' 
     
                   <? if(valore tipomenu resituito dalla query 'Eventi') { ?>
                    selected = "selected"> Eventi</option>
                    <? }else{ ?>>Eventi</option><?}?> 
                   
                   <option value='2'>Altri menu</option> 

    </select>
    e lo ripeti per ogni option..probabilmente ci sara qualche errore di sintassi ma il concetto è quello

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 © 2025 vBulletin Solutions, Inc. All rights reserved.