Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Caricare più foto

  1. #1

    Caricare più foto

    Ciao non riesco a capire cosa non vada con questo script per caricare più immagini conteporaneamente:
    Codice PHP:

    <?php
    $count 
    0;
    $hd opendir("utenti/$idprofilo");
    while((
    $file readdir($hd)) !== false) {
    if (
    $file[0] != ".") {
    $count++;
    }
    }

    mkdir("utenti/$id/$count"0777);
    mkdir("utenti/$id/$count/200"0777);
    mkdir("utenti/$id/$count/50"0777);

    if(
    count($_FILES['uploads']['filesToUpload'])) {
      foreach (
    $_FILES['uploads']['filesToUpload'] as $file) {

    //controllo che il file non sia più grande di 500kb
    if ($_FILES["file"]["size"] < 512000){
    //controllo errori durante l'upload
    if ($_FILES["file"]["error"] > 0){
    echo 
    "Errore: " $_FILES["file"]["error"]."";
    }else{
    $size $_FILES["$file"]["size"];
    $tmpfile $_FILES["$file"]["tmp_name"]; 
    $orgname "{$count}.jpg"
    $destdir "utenti/$id/$count/"
    $destfile $destdir.$orgname;

    move_uploaded_file($tmpfile$destfile);

    //creo una versione da 200x200 e una da 50x50
    $resize = new resize;
    $resize->urlimage "utenti/$id/$count/$orgname";
    $resize->maxX 200;
    $resize->maxY 200;
    $resize->folder "utenti/$id/$count/200/";
    $resize->newName "$orgname";
    $resize->go();
    $resize = new resize;
    $resize->urlimage "utenti/$id/$count/$orgname";
    $resize->maxX 50;
    $resize->maxY 50;
    $resize->folder "utenti/$id/$count/50/";
    $resize->newName "$orgname";
    $resize->go();
    echo 
    "Foto caricata";
    }
    }else{
    echo 
    "File troppo grande";
    }
        
      }
    }

    ?>
    Non mi carica neanche una foto,ma non da errori

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    1,453
    Dove sono definiti $id e $idprofilo? Aggiungi un error_reporting(E_ALL) e assicurati che le cartelle e i percorsi vengano creati correttamente

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2012
    Messaggi
    51
    Mi ci sono imbattuto anche io :P
    Non ti da errori perché non sfrutti la gestione degli errori della piccola libreria di resize o almeno mi pare questo il problema.

    Mettici questo codice in fondo e vediamo se si risolve:
    Codice PHP:
    echo implode("
    "
    $resize->errore); 

    Comunque può darsi sia colpa della directory che devi scriverla per estesa, e in quella che hai scritto tu non vedo la barra (/) iniziale.
    Poi non so, prima rendi visibile l'errore così vediamo quale è il motivo e si risolve più in fretta

  4. #4
    Ciao questo codice lo uso per caricare una singola immagine e funziona...il problema come ho scritto ce l'ho quando ne devo caricare di più conteporaneamente...quindi forse c'è qualche errore nella parte iniziale o come ho impostato lo script...

  5. #5
    Ho modificato il codice:

    Codice PHP:
    //ricevo i dati delle immagini
    $files = array();
    $fdata=$_FILES["file"];
    $numarray count($fdata);

    for(
    $i=1$i <= $numarray$i++){
    $files[] = array(
     
    'name'    =>$fdata["name"][$i],
     
    'tmp_name'=>$fdata["tmp_name"][$i],
     
    'type' => $fdata["type"][$i],
     
    'size' => $fdata["size"][$i],
     
    'error' => $fdata["error"][$i],
     );
     } 
    Devo contare le foto che vengono caricate ed è giusto fare come ho fatto io con $numarray?
    Facendo il var_dump di $files caricando una sola immagine mi da questo:

    array(5) { [0]=> array(5) { ["name"]=> NULL ["tmp_name"]=> NULL ["type"]=> NULL ["size"]=> NULL ["error"]=> NULL } [1]=> array(5) { ["name"]=> NULL ["tmp_name"]=> NULL ["type"]=> NULL ["size"]=> NULL ["error"]=> NULL } [2]=> array(5) { ["name"]=> NULL ["tmp_name"]=> NULL ["type"]=> NULL ["size"]=> NULL ["error"]=> NULL } [3]=> array(5) { ["name"]=> NULL ["tmp_name"]=> NULL ["type"]=> NULL ["size"]=> NULL ["error"]=> NULL } [4]=> array(5) { ["name"]=> NULL ["tmp_name"]=> NULL ["type"]=> NULL ["size"]=> NULL ["error"]=> NULL } }

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.