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

    rinominare immagini caricate da form

    ciao a tutti, avrei la necessità di rinominare delle foto caricate tramite form, vi faccio l'esempio del codice:

    codice:
     
    
    $linkimg= $_FILES['image']['name'];
    			
    			$query = "UPDATE utenti SET imguser='$linkimg' WHERE user_id = ('$user_id')";
    						
    	    	$risultato = mysql_query($query, $conn);
    			
    			}
    			
    			if (mysql_affected_rows() == 1)
    			{
    				//Inserimento immagine OK 
    			
    			(move_uploaded_file($_FILES['image']['tmp_name'], 'imgpro/'.$_FILES['image']['name']));  
    			$messaggio = '<p class="testo" style="text-align:center;">Immagine caricata correttamente</p>';
    				
    				}
    ora mi è venuta in mente una cosa, se due utenti caricano due immagini diverse ma con lo stesso nome cosa succede? la miglior cosa sarebbe modificare il nome prima di inserire il link all'immagine nel database e il file nella cartella... ma come?

  2. #2
    Codice PHP:
    function catch_estensione($file_name='')
        {
        
    $ext strtolower(end(explode('.'$file_name)));
        return 
    $ext;
        }

    $estensione catch_estensione($_FILES['image']['name']);
    move_uploaded_file($_FILES['image']['tmp_name'], 'imgpro/'.time().'.'.$estensione

  3. #3
    secondo me è meglio evitare time, se due utenti caricano nello stesso secondo un'immagine con lo stesso nome ci sarà un errore (anche se lo reputo molto difficile) quindi non forse è usare l'id di mysql?

  4. #4
    ok grazie, lo script funziona ma mi restituisce questo errore:

    Only variables should be passed by reference in ....

    in questa riga

    codice:
      $ext = strtolower(end(explode('.', $file_name)));

    forse è perchè nella variabile hai passato quel punto? come fare ad evitarlo?

  5. #5
    è un errore che non ho mai ben capito da cosa possa provenire... cmq credo che così potresti risolvere
    Codice PHP:
    $nome_file $_FILES['image']['name'];
    $estensione catch_estensione($nome_file); 

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.