Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 34
  1. #1
    Utente di HTML.it L'avatar di james
    Registrato dal
    Jun 2002
    Messaggi
    1,481

    upload su mysql pro e contro

    Siete favorevoli o sfavorevoli alla gestione del titolo?!

    Se salvo tutto su HD sono soggetto ad eventuali problemi di sicurezza perchè devo garantire accesso in scrittura alla directory che contiene i file da uplodare, ed inoltre, se per qualche ragione il file non viene uplodato correttamente (succede) ma il link ad esso viene correttamente inserito nel DB ne risultano fastidiosi errori di visualizzazione.

    D'altra parte, salvare file in MySQL...ho paura di sovraccaricare il database, se ad esempio faccio salvare le immagini nel DB, ad ogni richiesta della pagina con le thumb faccio praticamente n. select nel db con un notevole traffico di dati tra mysql e apache, ed inoltre se faccio l'upload di file da 3 Mb in su, apache mi occupa il 100% della CPU e devo riavviare il servizio (questo sotto windows, in linux non ho ancora provato).

    Cosa consigliate?

  2. #2
    Moltissimi forum, moltissimi applicativi php tendono a memorizzare tutto su mysql.

    Ho realizzato personalmente due servizi, uno per la didattica on-line uno invece per la gestione degli atti notarili e, anche per questioni di sicurezza, mi sono affidato a mysql.

    Alla fine del lavoro ti accorgerai che è tutto molto più ordinato e rapido. Poi ovviamente, dipende da ciò che devi fare.

    Se devi far scaricare una decina di immagini mettile sullo spazio web,senza impegnare mysql.

    ciao
    Marco Bianucci
    marco@phoenixweb.it
    Hosting php
    Programmazione & WebDesign

  3. #3
    Utente di HTML.it L'avatar di james
    Registrato dal
    Jun 2002
    Messaggi
    1,481
    Originariamente inviato da phoenixweb
    Moltissimi forum, moltissimi applicativi php tendono a memorizzare tutto su mysql.

    Ho realizzato personalmente due servizi, uno per la didattica on-line uno invece per la gestione degli atti notarili e, anche per questioni di sicurezza, mi sono affidato a mysql.

    Alla fine del lavoro ti accorgerai che è tutto molto più ordinato e rapido. Poi ovviamente, dipende da ciò che devi fare.

    Se devi far scaricare una decina di immagini mettile sullo spazio web,senza impegnare mysql.

    ciao
    facciamo l'esempio del catalogo elettronico, o del commercio elettronico, per ogni pagina dei prodotti ci sono sempre quei 10-20 articoli corredati di immagine thumb (la miniatura), e poi per vedere il dettaglio dell'articolo l'utente clicca sulla foto per vederne l'immagine ingrandita. Gestire tutto con mysql sarebbe ottimo, logicamente perfetto, però una gestione del genere significa anche che per ogni utente che visualizza la pagina con la lista dei 10-20 articoli, si faranno 10-20 query per la visualizzazione. Io ho preso a modello il sistema trattato dal mitico GM (http://freephp.html.it/articoli/view...sp?id=73&pag=1), altre soluzioni sono ben gradite.

  4. #4
    Originariamente inviato da james
    una gestione del genere significa anche che per ogni utente che visualizza la pagina con la lista dei 10-20 articoli, si faranno 10-20 query per la visualizzazione
    Mi sfugge il xkè delle 10-20 query

  5. #5
    Utente di HTML.it L'avatar di james
    Registrato dal
    Jun 2002
    Messaggi
    1,481
    Originariamente inviato da PatoGK
    Mi sfugge il xkè delle 10-20 query
    ho preso a modello il sistema dell'articolo menzionato prima (http://freephp.html.it/articoli/view...sp?id=73&pag=1) in cui si crea una pagina per la visualizzazione di una sola immagine:
    Codice PHP:
        $query "SELECT DatiBinari, Type FROM file_binari WHERE Id = '" $_GET["Id"] . "'";
        
    $select = @mysql_query($query) or die("Query fallita !");
        
        
    $result = @mysql_fetch_array($select);
        
        
    $data $result["DatiBinari"];
        
    $type $result["Type"];
        
        
    Header("Content-type: $type");
        echo 
    $data
    e poi si richiama la lista delle immagini da un'altra pagina in questo modo:
    Codice PHP:
    <? while($result = @mysql_fetch_array($select)) {

    if(
    in_array($result["Type"], $visualizzabili)) {

    echo 
    " <tr>\n <td align=\"center\"><img src=\"scarica.php?action=view&Id=" $result["Id"] . "\" width=\"80%\" height=\"80%\">";
    echo 
    "</td>\n </tr>\n";

    }

    }
    tu come fai?!

  6. #6
    Mai fatto prima, ma visto che sono storati in un campo di un db, fai una select con inner join tra le due tabelle, cosi avrai con un unico accesso al db avrai tutte le immagini che ti servono (in un campo restituito dalla select). A quel punto crei immagine x immagine (facendo un ciclo sul risultato della query).

  7. #7
    Utente di HTML.it L'avatar di james
    Registrato dal
    Jun 2002
    Messaggi
    1,481
    Originariamente inviato da PatoGK
    Mai fatto prima, ma visto che sono storati in un campo di un db, fai una select con inner join tra le due tabelle, cosi avrai con un unico accesso al db avrai tutte le immagini che ti servono (in un campo restituito dalla select). A quel punto crei immagine x immagine (facendo un ciclo sul risultato della query).
    per visualizzare un'immagine di cui si ha il binario, credo che debbo per forza dichiarare la pagina in questo modo:
    Codice PHP:
    Header("Content-type: $type"); 
    in cui $type è uguale a $_FILES["file_binario"]["type"], non posso fare una select e stampare a video il campo mediumblob di mysql, perchè visualizzerei solo il codice dell'immaigine. Se segui l'articolo che ho postato capisci tutto.

  8. #8
    Umm, ammesso e non concesso che sia cosi (hehehe, ti do il beneficio del dubbio) allora devi fare n accessi al db.
    Dato per assunto che tanto non gli cambia più di tanto (una serie di query dell'ordine di 10 o 20 non dovrebbe neanche sentirla) come architettura non è che sia il massimo.

  9. #9
    Utente di HTML.it L'avatar di james
    Registrato dal
    Jun 2002
    Messaggi
    1,481
    Ci vorrebbe qualcuno che ha già usato questo sistema e può dirci cosa ne pensa

  10. #10
    sto provando questo articolo, ho un piccolo problema....lo script di upload non mi carica nel database file di dimensioni superiori ad un 1 mb.....strano!!! è normale?? da premettere che ho modificato il php.ini in modo tale che mi permetta di uploadere fino a 8 mb è ho ovviamente cambiato il campo "DatiBinari" in LONGBLOB...PER IL RESTO SEMBRA CHE FUNGE ALLA PERFEZIONE, ma il problema del peso davvero lo rende di utilizzo limitato al meno per l'uso che ne devo fare io!! qualcuno puo' aiutarmi ad uscirne fuori??
    NAN V' PENZ PREPT

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.