Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    310

    Gestione upload immagini

    Salve a tutti,
    piccolo problemino con l'upload dei file e in particolar modo delle img.

    Dovrei creare una galleria fotografica su un sito in hosting su aruba.
    Sui server di Aruba, a quanto ho capito, non sono è installata la libreira GD per la gestione delle immagini.
    Quello che vorrei ottenere e di poter dimensionare le IMG caricate sul server.

    Partendo dall'inizio:

    caricato un file sul server come posso conoscerne le proprietà?

    Dimensione, Altezza, larghezza ecc.....

    E' possibile conoscerle prima di caricarle sul server in modo da impedire di caricare un file di dimensioni spropositate??
    Grazie

  2. #2
    Utente di HTML.it L'avatar di neida
    Registrato dal
    Feb 2005
    Messaggi
    1,478
    Ridimensionare dinamicamente le immagini senza la libreria GD non è possibile.

    Per conoscere le proprietà del file immagine prima di caricarlo poi usare la funzione filesize() per il peso e getimagesize() per le dimensioni e altri vari attributi.

  3. #3
    Utente di HTML.it L'avatar di jeppox
    Registrato dal
    Mar 2007
    Messaggi
    436
    Originariamente inviato da neida
    ...Per conoscere le proprietà del file immagine prima di caricarlo poi usare la funzione filesize() per il peso e getimagesize() per le dimensioni e altri vari attributi.
    neida sei sicura? le funzioni php da te indicate, vanno lato server, quindi si hanno le informazioni oltanto una volta che le immagini sono sul server.

  4. #4
    Utente di HTML.it L'avatar di neida
    Registrato dal
    Feb 2005
    Messaggi
    1,478
    Si, sono sicuro. Queste funzioni, abbinate alle rispettive funzioni dedicate all'array $_FILES (type, size...) possono essere usate tranquillamente prima di eseguire materialmente lo "spostamento" del file con, ad esempio, move_uploaded_file(). Del resto, la client difficilmente avrebbe la possibilità di eseguire controlli accurati...

  5. #5
    Utente di HTML.it L'avatar di jeppox
    Registrato dal
    Mar 2007
    Messaggi
    436
    ok prima di eseguire move_uploaded_file() ma soltanto dopo aver spedito il form (quindi con una lunga attesa a seconda della pesantezza e della connessione), robyd vorrebbe evitare di spedire il form con per es. 5MB di IMG e leggere le dimenasione della IMG prima di caricarle sul server, purtroppo ciò non è possibile.

  6. #6
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    310
    Originariamente inviato da neida
    Si, sono sicuro. Queste funzioni, abbinate alle rispettive funzioni dedicate all'array $_FILES (type, size...) possono essere usate tranquillamente prima di eseguire materialmente lo "spostamento" del file con, ad esempio, move_uploaded_file(). Del resto, la client difficilmente avrebbe la possibilità di eseguire controlli accurati...
    scusami come posso usare per esempio la funzione getimagesize() con l'array $_FILES?

    Io ho provato a mettere nella pagina del form un input type file,
    quando lo spedisco , nella pagina succ utilizzo l'array $_FILES:

    $immagine = $_FILES['miofile']['name'];


    ma questo mi restituisce il nome del file non tutto il percorso in locale,
    quindi come faccio ad utilizzare la funzione getimagesize() che invece ha bisogno di tutto il percorso del file?

  7. #7
    Utente di HTML.it L'avatar di neida
    Registrato dal
    Feb 2005
    Messaggi
    1,478
    $_FILES['file']['size'] è il riferimento per il controllo sulla dimensione del file. http://www.php.net/manual/it/features.file-upload.php

  8. #8
    Utente di HTML.it L'avatar di neida
    Registrato dal
    Feb 2005
    Messaggi
    1,478

    Re: Gestione upload immagini

    facciamo un po' di chiarezza...

    Originariamente inviato da robyd
    [...]

    Partendo dall'inizio:

    caricato un file sul server come posso conoscerne le proprietà?

    Dimensione, Altezza, larghezza ecc.....
    puoi usare le funzioni che ti ho indicato prima.

    Originariamente inviato da robyd

    E' possibile conoscerle prima di caricarle sul server in modo da impedire di caricare un file di dimensioni spropositate??
    No, senza prima spedire il form. E' un rischio però che bisogna prendersi per poter procedere nell'elaborazione dello script per caricare i file. Comunque l'upload terminerebbe prima della conclusione se parliamo di file da 5mb, molto probabilmente anche già verso i 2mb. Per questo motivo esistono delle funzioni dedicate per questi controlli.

  9. #9
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    310
    Originariamente inviato da neida
    $_FILES['file']['size'] è il riferimento per il controllo sulla dimensione del file. http://www.php.net/manual/it/features.file-upload.php
    ma questa funzione mi restituisce la dimensione del file uploadato nella cartella temporanea del server, quindi cmq fa prima l'upload.....
    se un file è di 10 Mb (e questo l'ho provato) ci mette un botto di tempo prima di darmi la dimensione perchè lo deve cmq caricare sul server nella cartella temp....

    io vorrei selezionare li'mg da caricare e prima di caricarla verificare che non sia di dim superiore a XX Mb

  10. #10
    Utente di HTML.it L'avatar di neida
    Registrato dal
    Feb 2005
    Messaggi
    1,478
    codice:
    Il campo nascosto MAX_FILE_SIZE (misurato in byte) deve precedere il campo di input del file,
    ed il suo valore indica la dimensione massima di file accettata. Questa è un'informazione per il 
    browser, ma anche il PHP lo verifica. E' facile aggirare questa impostazione sul browser, quindi 
    non fate affidamento sul fatto che il navigatore si comporti come desiderato! L'impostazione PHP 
    lato server per la dimensione massima non può comunque essere aggirata. Tuttavia 
    si può comunque inserire MAX_FILE_SIZE per evitare all'utente di attendere il trasferimento di un 
    file prima di scoprire che è di dimensioni eccessive.

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.