Visualizzazione dei risultati da 1 a 7 su 7

Discussione: rename

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929

    rename

    ciao a tutti,

    vorrei rinominare un file se in una cartella è presente un file con lo stesso nome
    ho fatto cosi
    Codice PHP:
    rename($v['name'], $v['name']+$v['size']); 
    ma ricevo errore
    codice:
    Warning: rename(foto1.jpg,24941):

    :master:

  2. #2
    usa file_exists

    se esiste rinomini.

    ma quella aggiunta che fai non la capisco.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929
    gia lo uso guarda ti posto un pezzo di codice

    Codice PHP:
    foreach($_FILES as $k => $v) {
        
    $qualehidden substr($k31); 
        
    $sottocartella $_POST['hidden'.$qualehidden];
        
    $uppath "../public/prodotti/$tabella/$cart/$sottocartella";
        if(isset(
    $v['name']) && $v['name'] !== '') {
            
    $moveto $uppath.'/'.$v['name'];
            if(
    file_exists($moveto)){
                
    $logs .=  $errori[1].'
    '
    ;
                
    //rename($v['name'], $v['size'].$v['name']);
                
    }
    ......
    continua 
    chiaramente se cancello l'immagine e provo a caricarla funziona

  4. #4
    concatena il nuovo nome fuori dalla funzione rename.

    Codice PHP:
           if(file_exists($moveto)){
     
               
    $moveto "$v[size].$moveto";
               
    $logs .=  $errori[1].'
    '

               
    rename($v['name'], $moveto); 

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929
    ricevo questo errore...

    codice:
    Warning: rename(foto1.jpg,24941.../public/particolare/foto1.jpg): No such file or directory

  6. #6
    personalmente piuttosto che complicarmi la vita controllando i nomi dei files durante l'upload, ed eventualmente rinominandoli se gia presenti, ho sempre preferito dare al file un nome generato da me in modo univoco. se poi ho bisogno anche di mantenere il nome originario del file, lo salvo nel database e lo uso quando realmente mi serve. per generare il nome univoco uso questa funzione:

    Codice PHP:
    /*
        Restituisce un codice alfanumerico univoco di almeno 12 cifre.
        Converte in base 36 un microtime.
    */
    function unique_id_alphanum() {
        
    $now = (string)microtime();
        
    $now explode(' '$now);
        
    $unique_id $now[1].str_replace('.'''$now[0]);
        unset(
    $now);
        
        return 
    strtoupper(base_convert($unique_id1036));


  7. #7
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929
    potrebbe essere un'idea... grazie

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.