Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2011
    Messaggi
    45

    Upload image & thumbnail

    Ciao a tutti, ho questo codice che fa l'upload di un immagine all'interno di una determinata cartella, funziona bene, però vorrei che oltre a questo il codice stampasse in un apposita colonna FOTO del mio Database mysql la directory finale della foto uplodata che poi andrò a stampare in un img per mostrarla

    Codice PHP:
    if (isset($_FILES['image']))      
    {          
    $errors = array();          
    $allowed_ext = array('jpg''jpeg''png''gif');                    
    $file_name $_FILES['image']['name'];          
    $file_ext strtolower(end(explode('.'$file_name)));         
    $file_size $_FILES['image']['size'];          
    $file_tmp $_FILES['image']['tmp_name'];                    
    if (
    in_array($file_ext$allowed_ext) === false)          
    {
    $errors[] = "
    Estensione errata!"
    ;          
    }          
    if (
    $file_size 2097152)          
    {              
    $errors[] = "
    Dimensione errata!"
    ;          
    }          
    if (empty(
    $errors))          
    {               
    if (
    move_uploaded_file($file_tmp'images/'.$file_name))              {                  
    echo 
    '
    Eseguito!'
    ;              
    }          
    }          
    else                   
    {              
    foreach (
    $errors as $error
    {                  
    echo 
    $error'
    '
    ;              
    }          
    }      
    }   } } 

  2. #2
    non ho ben capito, vuoi inserire un record sul db con il percorso dell'immagine uploadata?

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2011
    Messaggi
    45
    Originariamente inviato da mangusta91
    non ho ben capito, vuoi inserire un record sul db con il percorso dell'immagine uploadata?
    Esatto il record con il percorso finale "post upload" va inserito nella mia tabella nel campo FOTO
    P.s
    Visto che dovrei fare una sorta di thumbnail cliccabile per poi visualizzare la foto a dimensioni originali, mi consigliate di caricare quella a pieno formato e poi forzare il ridimensionamento in un div o (cosa molto più complicata) fare in modo che il codice mi auto crei delle thumb ogni qual volta venga uplodata una foto?

  4. #4
    per quanto riguarda i thumbnail dinamicamente crei un banale link all'immagine, con all'interno l'immagine rimpicciolita:

    in questo modo l'immagine piccola diventa un collegamento per se stessa "grande"

    e poi per quanto riguarda inserire i record sul db nulla di difficile, quando fai l'upload fisico gli passerai il percorso finale, te lo ricostruisci e ad ogni upload ti connetti al db, fai una insert nella colonna da te desiderata con il percorso completo, ad esempio ./img/immagine.png

    se hai qualche altro problema non esitare a chiedere !

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2011
    Messaggi
    45
    Originariamente inviato da mangusta91
    per quanto riguarda i thumbnail dinamicamente crei un banale link all'immagine, con all'interno l'immagine rimpicciolita:

    in questo modo l'immagine piccola diventa un collegamento per se stessa "grande"
    Come pensavo si, forzando il ridimensionamento, grazie!
    Originariamente inviato da mangusta91
    e poi per quanto riguarda inserire i record sul db nulla di difficile, quando fai l'upload fisico gli passerai il percorso finale, te lo ricostruisci e ad ogni upload ti connetti al db, fai una insert nella colonna da te desiderata con il percorso completo, ad esempio ./img/immagine.png

    se hai qualche altro problema non esitare a chiedere !
    Tipo inserendo nel codice che ho già postato una query? del tipo:
    mysql_query("INSERT INTO nometabella (nomecampo)
    VALUES ('images/.$file_name')");

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2009
    residenza
    Roma
    Messaggi
    371
    sinceramente penso sia meglio creare una thumb per ogni immagine caricata altrimenti per aprire la pagina contenente tutte le immagini ci vorrebbe un'eternità dato il peso...

  7. #7
    davide hai perfettamente ragione, l'altro giorno ho affrontato un problema simile, ed invece di creare la thumbnail di ogni immagine ho messo una immagine uguale x tutte le img, ovvero una icona con una lente di ingrandimento e ho risolto il problema della "pesantezza" tornando al discorso della query... dopo che fai l'upload lanci una query sul db con il percorso finale dell'img

  8. #8
    Utente di HTML.it
    Registrato dal
    Dec 2011
    Messaggi
    45
    Originariamente inviato da mangusta91
    davide hai perfettamente ragione, l'altro giorno ho affrontato un problema simile, ed invece di creare la thumbnail di ogni immagine ho messo una immagine uguale x tutte le img, ovvero una icona con una lente di ingrandimento e ho risolto il problema della "pesantezza" tornando al discorso della query... dopo che fai l'upload lanci una query sul db con il percorso finale dell'img
    io avrò solamente 3 immagini per pagina, non penso appesantiscano così tanto, cmq vorrei provare prima di pensare a una soluzione di thumb automatiche, per quanto riguarda lo stampare sul database può funzionare una cosa come quella query postata?

  9. #9
    Codice PHP:
    $query="INSERT INTO nometabella (campo) VALUES ('./images/".$nomefile."')";

    $result=mysql_query($query$db//$db è la connessione al database 

  10. #10
    Utente di HTML.it
    Registrato dal
    Dec 2011
    Messaggi
    45

    Re: Upload image & thumbnail

    Avevo provato così ma non funziona...o meglio, l'upload funziona ma non la scrittura sul Database...
    Codice PHP:
    mysql_connect("localhost""root""root") or die(mysql_error());  
    mysql_select_db("DB") or die(mysql_error());

    if (isset(
    $_FILES['image']))      
    {          
    $errors = array();          
    $allowed_ext = array('jpg''jpeg''png''gif');                    
    $file_name $_FILES['image']['name'];          
    $file_ext strtolower(end(explode('.'$file_name)));         
    $file_size $_FILES['image']['size'];          
    $file_tmp $_FILES['image']['tmp_name'];                    
    if (
    in_array($file_ext$allowed_ext) === false)          
    {
    $errors[] = "
    Estensione errata!"
    ;          
    }          
    if (
    $file_size 2097152)          
    {              
    $errors[] = "
    Dimensione errata!"
    ;          
    }          
    if (empty(
    $errors))          
    {               
    if (
    move_uploaded_file($file_tmp'images/'.$file_name))              {                  
    echo 
    '
    Eseguito!'
    ;
    $query="INSERT INTO tabella (foto) VALUES ('images/".$file_name."')";              
    }          
    }          
    else                   
    {              
    foreach (
    $errors as $error
    {                  
    echo 
    $error'
    '
    ;              
    }          
    }      
    }   } } 

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.