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

    ulpload e rinomina file

    salve ragazzi
    ho questo codice php che fa l'upload semplice di un file
    codice:
    <?php
       // Edit upload location here
       $destination_path = getcwd().DIRECTORY_SEPARATOR;
    
       $result = 0;
       
       $target_path = $destination_path . basename( $_FILES['myfile']['name']);
    
       if(@move_uploaded_file($_FILES['myfile']['tmp_name'], $target_path)) {
          $result = 1;
       }
       
       sleep(1);
    ?>
    
    <script language="javascript" type="text/javascript">window.top.window.stopUpload(<?php echo $result; ?>);</script>
    e avrei bisogno di capire come aggiungere 3 funzioni.

    1) rinominare il file salvato con dataoraesecondo.ext
    2) creare una miniatura dello stesso file
    3) al termine ( siccome apro questo script in una popup) chiudere la popup e passare ad un campo del form sottostante il nome del file.

    Qualcuno sa aiutarmi?
    grazie mille e scusate le molteplici domande
    L'intuizione creativa più di ogni altra cosa è l'unico elemento per cui la vita vale la pena di essere vissuta (D.W)

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,503

    Re: ulpload e rinomina file

    Originariamente inviato da Stanislao
    1) rinominare il file salvato con dataoraesecondo.ext
    Codice PHP:
    $dot strrpos($_FILES['myfile']['name'], '.') + 1;
    $estensione substr($_FILES['myfile']['name'], $dot);
    $timestamp date('YmdHis');
    //se $target_path non finisce con / aggiungilo
    if(@move_uploaded_file($_FILES['myfile']['tmp_name'], $target_path.$timestamp.'.'.$estensione)) { 
    2) creare una miniatura dello stesso file
    Questa è una funzione che mi sono fatto io per i miei lavori
    Codice PHP:
    function makeThumb($image,$path)
    {
        
    $max_width 150//larghezza massima per la miniatura
        
    $max_height 150//altezza massima per la miniatura
            
        
    $dot strrpos($image'.') + 1;
        
    $estensione substr($image$dot);
        
    $estensione .= '.'.$estensione;
        if(
    $estensione==".jpeg" || $estensione==".jpg")
        {
            
    $handle_immagine = @imagecreatefromjpeg($path.$image);
        }
        elseif(
    $estensione==".gif")
        {
            
    $handle_immagine = @imagecreatefromgif($path.$image);
        }
        elseif(
    $estensione==".png")
        {
            
    $handle_immagine = @imagecreatefrompng($path.$image);
        }
        if(
    $handle_immagine !== false//se la nuova immagine è stata creata correttamente
        
    {
            
    $width imagesx($handle_immagine);
            
    $height imagesy($handle_immagine);
                
            
    //dimensioni per la thumbnail
            
    if($width >= $height)
            {
                
    $newX $max_width
                
    $newY round(($height/$width)*$newX);
            }
            else
            {
                
    $newY $max_height//dimensione massima verticale
                
    $newX round(($width/$height)*$newY);
            }
                
            
    $tmp_immagine imagecreatetruecolor($newX$newY);
            
    imagecopyresized($tmp_immagine,$handle_immagine,0,0,0,0$newX$newY$width$height); 
            
    //crea la miniatura con lo stesso nome dell'immagine originale aggiungendo 'thumb_' all'inizio
            
    if(!imagejpeg($tmp_immagine$path.'thumb_'.$image))
            {
                return 
    false;
            }
                
            
    imagedestroy($tmp_immagine);
        }
        else 
    //imagecreatefrom... ha fallito
        
    {
            return 
    false;
        }
        return 
    true;

    3) al termine ( siccome apro questo script in una popup) chiudere la popup e passare ad un campo del form sottostante il nome del file.
    Lo script viene chiamato tramite AJAX?

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.