Visualizzazione dei risultati da 1 a 8 su 8

Discussione: mySQL e immagini

  1. #1

    mySQL e immagini

    Salve a tutti

    è da qualche anno che faccio uso di php e mySQL per creare aree riservate di aziende ecc, pero ora mi trovo ad affrontare il problema delle immagini e ho avuto un po' di problemi:

    1) se inserisco direttamente un'immagine da "phpmyadmin" e poi provo a visualizzarla mi si vedono una serie di lettere e simboli incomprensibili invece dell'immagine (penso siano problemi di slash).

    2) non so quale tecnologia è meglio adottare e cioè c'è chi dice di non mettere le immagini su database ma di metterle in una cartella e mettere su db solo il nome. c'è invece chi dice il contrario.


    io vi chiedo: (per la 2) ma le gallerie di immagini piu diffuse come sono fatte?

    (per la 1) qual è il problema? come lo risolvo?

    grasssie

  2. #2
    Ti suggerisco di leggere questo tutorial:

    http://www.ludovicocaldara.net/computer/ImageIntoDB.pdf

    Personalmente preferisco non appesantire il DB ed inserirvi solo i dati di indicizzazione delle immagini mantenendo i file sul silesystem.

  3. #3
    grazie era quello che cmq pensavo di fare io ma ho un ultima domanda scusa:

    la volta che creero un'area riservata per far cancellare o inserire al cliente immagini nuove, come le fara a cancellare dentro la cartella tramite interfaccia web?
    che funzioni si usano?

  4. #4

  5. #5
    ok thanks

  6. #6
    Giusto come nota

    L'inserimento delle immagini, cosi come degli altri contenuti, sul database, è una pratica si poco usata però ha anche tutta una serie di vantaggi:
    - la replicazione del contenuto, in un sistema master/slave questo avviene automaticamente distribuendo il lavoro da un solo nodo a più nodi senza dover implementare funzionalità apposite
    - maggiore sicurezza, un upload sul disco potrebbe essere incluso a causa di bug nel codice, cosa che non può avvenire se il dato risiede nel database ... se si riesce ad accedere al database allora più che bug direi cratere
    - migliori performance, una grande quantità di file in una sola cartella, spesso, comportano una notevole riduzione nelle prestazioni del filesystem (ad esempio la ext3 degrada considerevolmente in situzioni del genere cosi come la reiserfs3 ma altri filesystem come XFS o ZFS non hanno di questi problemi perché la degradazione delle performance, quando avviene, è lineare rispetto al numero di file presenti sulla directory)
    - maggiore semplicità di gestione, per ridurre i problemi esposti prima di sololito si splittano i file in directory e sotto directory (personalmente i file sul disco li chiamo con degli hash, senza estensione, e poi uso la prima lettera e la prima e la seconda per creare delle cartelle contenenti il file) però su database ovviamente questo non è necessario, se la struttura è normalizzata correttamente una suddivisione non serve

    Do per scontato che il download non avvenga per accesso diretto al file, pratica abbastanza sconsigliata perché potrebbe portare, se mancano controlli sul codice di upload, ad eseguire codice malevolo (in specifiche condizioni, ad esempio sfruttando un include che avviene tramite url)

    Personalmente non utilizzerei il database per lo storage dei file, ma so dove andare a mettere le mani se mi dovesse servire una struttura distribuita o particolare, l'uso del database come storage, comunque è più conveniente in queste situzioni perché riduce notevolmente la complessità del codice che non deve lottare poi con tutte queste situazioni

  7. #7
    maddoooooooooooooooooooooooooo VVoVe:

    grande cmq ok grazie a tutti per le risposteeeee, indaghero!!!

    cmq nessuno mi puo risolvere il problema 1)

    perchè un logo dell'azienda si puo tranquillamente inserire nel db, non voglio metterlo in una cartella, solo che mi fa casino con quel codice

  8. #8
    Originariamente inviato da cronycles
    cmq nessuno mi puo risolvere il problema 1)
    Se è un problema di slashes:

    http://www.php.net/stripslashes

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.