Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16

Discussione: upload immagini grandi

  1. #1

    upload immagini grandi

    .. so che è un argomento già trattato (mi sono letto tutta la pillola sul upload+rezize comprese le 7 pagine di risposte...) ma veramente è impossibile caricare tramite php delle immagini di grandi dimensioni??
    a me continua a dare questo errore:

    Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 8192 bytes) in /home/virtual/site105/fst/var/www/html/admin.php on line 507

    in corrispondenza della funzione ImageCreateFromJpeg().
    c'è un modo per ovviare a questo problema o un sistema diverso???

    mi sembra assurdo che per fare funzionare una funzione di resize+upload le immagini vadano ridimensionate prima manualmente...

  2. #2
    la soluzione è semplice ma penso che non puoi metterla in pratica ...

    Basta che nel file php.ini aumenti il valore di memory_limit a più di 8M (8Mb) come attualmente impostato.

    Se hai accesso a questo parametro e puoi cambiarlo non avrai più problemi (o almeno non questo).

    PHP ridimensiona senza problemi immagini giganti, ho testato una da 15'000 x 10'000 pixel per un'applicazione che ho sviluppato e ha funzionato perfettamente, c'è voluto un po' di tempo e molta memoria (il processo Apache segnava un consumo di 1Gb di memoria) ma ha funzionato.

    Con un limite di memoria a 8Mb effettivamente le grandi immagini non passano, potresti cercare di ottimizzare lo script al massimo (eliminare tutte le variabili non più usate, ...) ma non basterà comunque.

  3. #3
    Quindi non c'è proprio niente da fare se uno non ha accesso al php.ini?
    Non si può modificare in .htacces?
    codice:
    php_value memory_limit "16M"
    no?
    o forse puoi settarlo solo per le immagini (sarebbe ancora meglio no?)

    codice:
    <FilesMatch "\.(estensione1|estensione2?)$">
    php_value memory_limit 20M
    </FilesMatch>

  4. #4
    <FilesMatch "\.(estensione1|estensione2?)$">
    php_value memory_limit 20M
    </FilesMatch>

    questo sistema non funzionerebbe mai
    per il semplice motivo che apache interpreta gli script php, quindi dovrebbe avere estensione php, che sarebbe esattamente uguale a metterlo normalmente

  5. #5
    Originariamente inviato da daniele_dll
    <FilesMatch "\.(estensione1|estensione2?)$">
    php_value memory_limit 20M
    </FilesMatch>

    questo sistema non funzionerebbe mai
    per il semplice motivo che apache interpreta gli script php, quindi dovrebbe avere estensione php, che sarebbe esattamente uguale a metterlo normalmente
    Grazie per il chiarimento... in effetti avevo messo il forse... quindi mi confermi che nel file htaccess si può impostare il memory_limit?

  6. #6
    puoi anche provare a farlo direttamente nello script PHP con la funzione ini_set(); secondo la doc PHP il memory_limit lo puoi impostare ovunque: script, php.ini o htaccess

  7. #7
    c'è una bella pillola che tratta la configurazione di php via apache\.htaccess

  8. #8
    si si grazie l'avevo letta ma non mi sembra che ci fosse scritto qualcosa sul memory_limit... grazie a spoon25 per l'info... vedrò di studiare anche ini_set()...ci sono delle controindicazioni? E' preferibile un metodo all'altro?

  9. #9
    puoi anche provare a farlo direttamente nello script PHP con la funzione ini_set(); secondo la doc PHP il memory_limit lo puoi impostare ovunque: script, php.ini o htaccess
    Ho anche io avuto di questi problemi.
    Purtroppo dipende dal servizio di hosting che avete a disposizione.
    1- Se avete un vostro server, non ci sono problemi: potete accedere e configurare tutti i parametri del php.ini.
    2- Se Il server su cui siete ospitati è condiviso, non viene data la possibilità di modificare questo parametro (ovviamente)
    3- Se siete ospitati su un server dedicato, potete aver accesso a tutti i campi (ovviamente questa soluzione ha un costo decisamente più alta rispetto alla precedente).
    :rollo:
    è meglio tacere e far credere di essere stupido piuttosto che parlare e togliere ogni dubbio

  10. #10
    grazie a tutti per le risposte...

    ho provato a settare il memory_limit con ini_set() nello script e non ha funzionato: evidentemente il mio servizio di hosting remoto non mi permette di farlo... dovrò chiedere a loro di modificarlo???

    però ho notato che anche sul mio server locale di prova il memory_limit è impostato a 8M e l'upload di immagini grandi funziona benissimo... perchè???????????????

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.