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

    Impostare il nome del file in upload

    ho questa roba qua che fa l'upload dei file:
    Codice PHP:
    if ($_SERVER['REQUEST_METHOD'] == "POST" && isset($_POST['upload_img'])) {
        
    $maxSize 512000//byte => 550KB
        
    $acceptType = array(
            
    'png' => 'image/png',
            
    'jpe' => 'image/jpeg',
            
    'jpeg' => 'image/jpeg',
            
    'jpg' => 'image/jpeg',
            
    'gif' => 'image/gif',
            
    'bmp' => 'image/bmp',
            
    'ico' => 'image/vnd.microsoft.icon',
        );
        
    $cartella "../gallery/";
        for (
    $i 0$i count($_FILES['file']['name']); $i++) {
            echo 
    "Risultato file " . ($i 1) . ": " upload($i$cartella$maxSize$acceptType) . "
    "
    ;
        }
    }

    function 
    upload($i$cartella$maxSize$acceptType) {
    //    $name = 
        
    if ($_FILES['file']['name'][$i] != "") {
            
    $destinazione $cartella basename($_FILES['file']['name'][$i]);
            if (
    $_FILES['file']['size'][$i] <= $maxSize) {
                if (
    in_array($_FILES['file']['type'][$i], $acceptType)) {
                    if (
    move_uploaded_file($_FILES['file']['tmp_name'][$i], $destinazione)) {
                        return 
    "File caricati";
                    } else {
                        return 
    "Errore nell'upload";
                    }
                } else {
                    return 
    'Tipo file non valido';
                }
            } else {
                return 
    'File troppo grande';
            }
        } elseif (
    $_POST['upload_img']) {
            return 
    'Non ci sono file da inserire';
        }

    funziona bene ma io vorrei impostare il nome del file in upload.
    qualcosa del genere: gallery + tot_num_file+1 + estensione
    la conta del numero di file ce l'ho già:
    Codice PHP:
    function countImg() {
        
    $count 0;
        
    $hd opendir("../gallery");
        while ((
    $files readdir($hd)) !== false) {
            if (
    $files[0] != ".") {
                
    $count++;
            }
        }
        return 
    $count;

    io pensavo di impostare il nome del file così:
    Codice PHP:
    $name "gallery_" . (countImg() + 1) . "." estensione
    ma come faccio a reperire l'estensione del file?

  2. #2
    ho provato un pò di cose ma senza successo:
    Codice PHP:
    if ($_SERVER['REQUEST_METHOD'] == "POST" && isset($_POST['upload_img'])) {
        
    $maxSize 512000//byte => 550KB
        
    $acceptType = array(
            
    'png' => 'image/png',
            
    'jpe' => 'image/jpeg',
            
    'jpeg' => 'image/jpeg',
            
    'jpg' => 'image/jpeg',
            
    'gif' => 'image/gif',
            
    'bmp' => 'image/bmp',
            
    'ico' => 'image/vnd.microsoft.icon',
        );
        
    $cartella "../gallery/";
        for (
    $i 0$i count($_FILES['file']['name']); $i++) {
            echo 
    "Risultato file " . ($i 1) . ": " upload($i$cartella$maxSize$acceptType) . "
    "
    ;
        }
    }

    function 
    upload($i$cartella$maxSize$acceptType) {
        
    $conta 0;
        for (
    $j 0$j $i$j++) {
            
    $name "gallery_" countImg() . $conta strrchr($_FILES['file']['name'][$i], '.');
            
    $conta++;
        }
        if (
    $_FILES['file']['name'][$i] != "") {
            
    $destinazione $cartella basename($_FILES['file']['name'][$i]);
            if (
    $_FILES['file']['size'][$i] <= $maxSize) {
                if (
    in_array($_FILES['file']['type'][$i], $acceptType)) {
                    if (
    move_uploaded_file($name$destinazione)) {
                        return 
    "File caricati";
                    } else {
                        return 
    "Errore nell'upload " $name;
                    }
                } else {
                    return 
    'Tipo file non valido';
                }
            } else {
                return 
    'File troppo grande';
            }
        } elseif (
    $_POST['upload_img']) {
            return 
    'Non ci sono file da inserire';
        }
    }

    function 
    countImg() {
        
    $count 0;
        
    $hd opendir("../gallery");
        while ((
    $files_count readdir($hd)) !== false) {
            if (
    $files_count[0] != ".") {
                
    $count++;
            }
        }
        return 
    $count;

    mi dice sempre:Errore nell'upload
    e nn mi indica neanche $name.

  3. #3
    sembra ok:
    Codice PHP:
    if ($_SERVER['REQUEST_METHOD'] == "POST" && isset($_POST['upload_img'])) {
        
    $maxSize 512000//byte => 550KB
        
    $acceptType = array(
            
    'png' => 'image/png',
            
    'jpe' => 'image/jpeg',
            
    'jpeg' => 'image/jpeg',
            
    'jpg' => 'image/jpeg',
            
    'gif' => 'image/gif',
            
    'bmp' => 'image/bmp',
            
    'ico' => 'image/vnd.microsoft.icon',
        );
        
    $cartella "../gallery/";
        for (
    $i 0$i count($_FILES['file']['name']); $i++) {
            echo 
    "Risultato file " . ($i 1) . ": " upload($i$cartella$maxSize$acceptType) . "
    "
    ;
        }
    }

    function 
    upload($i$cartella$maxSize$acceptType) {
        if (
    $_FILES['file']['name'][$i] != "") {
            
    $destinazione $cartella "gallery_" countImg() . strrchr($_FILES['file']['name'][$i], '.');
    //        $destinazione = $cartella . basename($_FILES['file']['name'][$i]);
            
    if ($_FILES['file']['size'][$i] <= $maxSize) {
                if (
    in_array($_FILES['file']['type'][$i], $acceptType)) {
                    if (
    move_uploaded_file($_FILES['file']['tmp_name'][$i], $destinazione)) {
                        return 
    "File caricati";
                    } else {
                        return 
    "Errore nell'upload: " $j;
                    }
                } else {
                    return 
    'Tipo file non valido';
                }
            } else {
                return 
    'File troppo grande';
            }
        } elseif (
    $_POST['upload_img']) {
            return 
    'Non ci sono file da inserire';
        }
    }

    function 
    countImg() {
        
    $count 0;
        
    $hd opendir("../gallery");
        while ((
    $files_count readdir($hd)) !== false) {
            if (
    $files_count[0] != ".") {
                
    $count++;
            }
        }
        return 
    $count;


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.