Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2013
    Messaggi
    83

    Creazione di un nome univoco in php

    Salve
    avrei la necessità di creare un nome univoco e passarlo al db:

    il campo lo devo passare in questo modulo
    :
    if(!empty($_FILES['picture']['name'])){
    $config['upload_path'] = './uploads/';
    $config['allowed_types'] = 'jpg|jpeg|png|gif';
    $config['file_name'] = $_FILES['picture']['name'];

    //Load upload library and initialize configuration
    $this->load->library('upload',$config);
    if($this->input->post('userSubmit')){

    $userData = array(
    'name' => $this->input->post('name'),
    'email' => $this->input->post('email'),
    'picture' => $_FILES['picture']['name']
    );
    quindi devo passare a name un nome univoco che si crei da solo
    mentre nel modulo di sopra lo passavo da form
    Grazie

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,445
    Potresti concatenare il timestamp di quando viene eseguita l'operazione, al nome del file che viene caricato, ad esempio:
    Codice PHP:
    'picture' => time() . '_' $_FILES['picture']['name'
    Che arrivino 2 file con lo stesso nome all'interno dello stesso secondo è abbastanza difficile, ma se vuoi stare ancora più sicuro potresti usare microtime() invece di time() così il timestamp è preciso al microsecondo, funziona però solo se il server supporta la system call gettimeofday() (vedi la documentazione della funzione microtime() per maggiori informazioni).

    Un'alternativa potrebbe essere la scrittura di una funzione che genera una sequenza di lettere e numeri casuale di lunghezza che decidi tu, poi nel codice prevedi un ciclo in cui generi una sequenza, esegua una query sul db alla ricerca di tale codice, se lo trova vuol dire che è già in uso e ne genera un altro, se non lo trova vuol dire che è nuovo, puoi uscire dal ciclo ed usare questa sequenza.
    Ultima modifica di Alhazred; 17-03-2017 a 13:13

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2013
    Messaggi
    83
    Grazie funziona..!

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 © 2024 vBulletin Solutions, Inc. All rights reserved.