Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2002
    Messaggi
    40

    immagini nel database: conviene?

    Ho questo problema:
    ho un database di clienti. ad ogni cliente posso fare X foto.
    Tramite il programma che ho fatto, scegliendo un cliente, io faccio vedere le foto di tale cliente.

    Volevo sapere da qualcuno di voi (piu esperto di me)
    se è conveniente salvare le immagini (foto per lo più) in un database.

    Vorrei sapere se posso cadere nel rallentamento di tutta la struttura se, magari,
    immagazzino troppe foto, e se magati si può ovviare.

  2. #2
    Utente di HTML.it L'avatar di tapu
    Registrato dal
    May 2008
    Messaggi
    885
    ti converrebbe salvare le immagini in una cartella nel server e all'interno del campo URL_immagini ci metti la path di dove sono le foto/immagini dell'utente

  3. #3
    Sono d'accordo con Tapu: è meglio salvare nel database il nome della foto, e poi salvare la foto con lo stesso nome in una cartella, in questo modo per visualizzare la foto di basta estrarre il nome dal db e mostrarla attraverso un semplice tag <img>.
    Ho una certa dimestichezza con file e immagini nel db, dato che ho lavorato molto su un sistema basato esclusivamente su quello. nel tuo caso te lo sconsiglio: estrarre un nome dal db e far caricare poi dal browser dell'utente l'immagine tramite html è una cosa da nulla, in confronto a estrarre, mediante una query pesantissima, l'intero contenuto di una foto, per poi salvarla in modo provvisorio e ancora caricarla attraverso html.
    Inserire file in db risulta utile solo in caso si vogliano proteggere, altrimenti è un sistema da escludere.

  4. #4
    Di norma viene fatto nei modi sopra. Utilizzi un campo varchar o text in una tabella del tuo database per salvare i vari url (magari che puntano a spazi di hosting di immagini esterne) delle foto di quel cliente separando ogni url da un carattere speciale e ogni qualvolta ti serve un'immagine fare l'explode di questo campo e ricavarti i vari url.

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2002
    Messaggi
    40
    l'unica cosa di qui ho un dubbio è che, mettendole in una cartella possono essere visibili e per la privacy avrei un problema.

    altra cosa che devo pensare è come gestire le immagini per far si che a un cliente appaiano le immagini di solo quel cliente...

    pensavo ad una tabella
    con id | nome immagine | path | id cliente | data foto

    che ne dite?

  6. #6
    Originariamente inviato da Tri@de
    pensavo ad una tabella
    con id | nome immagine | path | id cliente | data foto
    esatto devi fare proprio così. Poi visualizzi le foto di solo quel cliente con quell'id... in pratica è una select del campo foto con clausola where sull'id del cliente...

    tieni presente che non puoi dimensionare inizialmente i campi foto..un cliente potrebbe avere 1,2,10,1000 foto caricate...quindi ti consiglio di creare un solo campo foto (magari text) che contiene tutti gli url delle varie foto che poi dovranno essere gestite con un explode e poi con un array... a meno che non stabilisci che un cliente può avere soltanto un numero n finito di foto...in questo caso creerai n campi...

  7. #7
    La privacy è un bel problema...
    Se le immagini sono in una cartella sono teoricamente accessibili a chiunque,questo è uno dei casi in cui vale la pena mettere files nel database.
    E' una cosa abbastanza complessa, ma puoi iniziare leggendo http://php.html.it/articoli/leggi/85...entro-a-mysql/

  8. #8
    Utente di HTML.it
    Registrato dal
    Apr 2002
    Messaggi
    40
    Originariamente inviato da quit10
    La privacy è un bel problema...
    Se le immagini sono in una cartella sono teoricamente accessibili a chiunque,questo è uno dei casi in cui vale la pena mettere files nel database.
    E' una cosa abbastanza complessa, ma puoi iniziare leggendo http://php.html.it/articoli/leggi/85...entro-a-mysql/
    Grazie del Link Quit10, ma il bello è che ho gia fatto questo passaggio.
    Adesso metto le immagini nel db, ma mi è venuto lo scrupolo di chiedere se magari lo appesantissi troppo.

    quello che mi servirebbe sapere (ma sò che è un po empirico) è la quantità di immagini che posso mettere prima di avere un decadimento delle prestazioni.
    In base a questo poi porrei dei limiti al programma per il salvataggio nel db.

  9. #9
    Tutto questo dipende esclusivamente dal tuo host, prova a chiedere all'amministratore.

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.