Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    nome univoco di un file per upload su server

    Ciao a tutti, ho una form da cui posso fare l'upload sul server di file pdf, e conseguente salvataggio dai dati relativi ai file su database

    per generare un nome file univoco ho pensato di utilizzare questo tipo di funzione:

    codice:
    ...
    
    $fileName = md5(microtime(true).mt_Rand());
    
    ...
    Può andar bene come idea, o posso utilizzare altri script per avere certezza di univocità-nome?

    Grazie a tutti per l'aiuto!
    Ultima modifica di aquatimer2000; 26-01-2022 a 18:20
    aquatimer2000

  2. #2
    ciao!

    io uso questo in genere: https://www.php.net/manual/en/function.uniqid.php

    passandogli true per maggiore entropia.
    ed in un caso specifico ho creato il nome del file così: uniqid('202201261723', true)

    quindi mettendo come prefisso la data con orario e minuti.

  3. #3
    Ciao aquatimer200,

    puoi provare la funzione com_create_guid che ti genera un id globale univoco, questo codice è completo gestendo anche il caso in cui la funzione non è attiva.


    codice:
    function GUID()
    {
        if (function_exists('com_create_guid') === true)
        {
            return trim(com_create_guid(), '{}');
        }
    
        return sprintf('%04X%04X-%04X-%04X-%04X-%04X%04X%04X', mt_rand(0, 65535), mt_rand(0, 65535), mt_rand(0, 65535), mt_rand(16384, 20479), mt_rand(32768, 49151), mt_rand(0, 65535), mt_rand(0, 65535), mt_rand(0, 65535));
    }
    
    $fileName = GUID();
    
    

  4. #4
    Quote Originariamente inviata da fermat Visualizza il messaggio
    ciao!
    Quote Originariamente inviata da fermat Visualizza il messaggio

    io uso questo in genere: https://www.php.net/manual/en/function.uniqid.php

    passandogli true per maggiore entropia.
    ed in un caso specifico ho creato il nome del file così: uniqid('202201261723', true)

    quindi mettendo come prefisso la data con orario e minuti.



    ok grazie, faccio qualche test, comunque l'idea di avere il riferimento temporale sul nome del file al momento non mi serve (però è da tenere in considerazione), tanto i dati li ho comunque salvati su db, e se serve li verifico da lì
    aquatimer2000

  5. #5
    Quote Originariamente inviata da SuperSavio Visualizza il messaggio
    Ciao aquatimer200,

    puoi provare la funzione com_create_guid che ti genera un id globale univoco, questo codice è completo gestendo anche il caso in cui la funzione non è attiva.


    codice:
    function GUID()
    {
        if (function_exists('com_create_guid') === true)
        {
            return trim(com_create_guid(), '{}');
        }
    
        return sprintf('%04X%04X-%04X-%04X-%04X-%04X%04X%04X', mt_rand(0, 65535), mt_rand(0, 65535), mt_rand(0, 65535), mt_rand(16384, 20479), mt_rand(32768, 49151), mt_rand(0, 65535), mt_rand(0, 65535), mt_rand(0, 65535));
    }
    
    $fileName = GUID();
    
    
    questo è ancora più interessante !! ottimo !
    aquatimer2000

  6. #6
    Quote Originariamente inviata da aquatimer2000 Visualizza il messaggio
    questo è ancora più interessante !! ottimo !

    ricordati di gestire l'estensione del file una volta che rinomini quest'ultimo

  7. #7
    Quote Originariamente inviata da SuperSavio Visualizza il messaggio
    ricordati di gestire l'estensione del file una volta che rinomini quest'ultimo
    si si certo, la parte che gestisce l'estensione del file, la utilizzo anche per lo script che sto utilizzando adesso
    aquatimer2000

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.