Visualizzazione risultati 1 fino 4 di 4

Discussione: Upload file ... contare quanti file sono stati caricati

  1. #1
    gabriele97 non è connesso Utente
    Data registrazione
    28-12-2009
    Messaggi
    134

    Predefinito Upload file ... contare quanti file sono stati caricati

    salve,
    ho un codice in fase di lavorazione

    Codice PHP:
    <HTML>
    <title>Gabriele97's Gallery</title>
    </html>
    <?php
    $connessione
    = mysql_connect("localhost","gabriele97","")or die("Connessione non riuscita: " . mysql_error());
    mysql_select_db("my_gabriele97", $connessione) or die("Errore nella selezione del database");
    $idu = $_COOKIE['wawa'];
    $query = mysql_query("SELECT * FROM user_gallery WHERE id='$idu'",$connessione);
    include(
    "../admin/user/head.html");
    $msgext1 = "<h2 class='demoHeaders'>Gabriele97's Gallery</h2>
    <div class='ui-widget'>
    <div class='ui-state-error ui-corner-all' style='padding: 0 .7em;'>
    <p><span class='ui-icon ui-icon-alert' style='float: left; margin-right: .3em;'></span>
    <strong>Attenzione:</strong> Il Formato del file "
    ;
    $msgext3 = " che si sta cercando di caricare non è valido perchè è di tipo: ";
    $msgext4 = ". Riprovare.</p>
    </div>
    <ul id='ui-icons' class='ui-widget ui-helper-clearfix'>
    <a href='javascript:history.back()' id='dialog_linka' class='ui-state-default ui-corner-all'><span class='ui-icon ui-icon-circle-arrow-w'></span>Indietro</a>
    </div>"
    ;
    if(isset(
    $_COOKIE['leuova']) && $_COOKIE['leuova']=='benedetta') {
    $texturl = $_POST['imgUrl'];
    $textfile = $HTTP_POST_FILES['ufile']['name'][0];
    if(
    $texturl == ""){
    if(
    $textfile == ""){header("Location: index.php"); exit;}
    else{
    $path1= "upload/".$HTTP_POST_FILES['ufile']['name'][0];
    $path2= "upload/".$HTTP_POST_FILES['ufile']['name'][1];
    $path3= "upload/".$HTTP_POST_FILES['ufile']['name'][2];
    $path4= "upload/".$HTTP_POST_FILES['ufile']['name'][3];
    $path5= "upload/".$HTTP_POST_FILES['ufile']['name'][4];


    /*$allow_types=array("jpg","gif","png","zip","rar","txt","doc");
    $numero_di_file_uppati = count($_FILE['ufile']['name']);
    $chiave_max_array = $numero_di_file_uppati-1;
    for($i=0; $i<=$chiave_max_array; $i++)
    {/*
    // ora puoi accdere ai singoli elementi dell'array $_FILES
    if($_FILES['ufile']['type'][$i] != 'image/png')
    {
    echo 'ad';
    exit;
    }
    }
    */


    copy($HTTP_POST_FILES['ufile']['tmp_name'][0], $path1);
    copy($HTTP_POST_FILES['ufile']['tmp_name'][1], $path2);
    copy($HTTP_POST_FILES['ufile']['tmp_name'][2], $path3);
    copy($HTTP_POST_FILES['ufile']['tmp_name'][3], $path4);
    copy($HTTP_POST_FILES['ufile']['tmp_name'][4], $path5);

    //$HTTP_POST_FILES['ufile']['name'] = file name
    //$HTTP_POST_FILES['ufile']['size'] = file size
    //$HTTP_POST_FILES['ufile']['type'] = type of file

    if ($HTTP_POST_FILES['ufile']['type'][0] != "image/png" && $HTTP_POST_FILES['ufile']['type'][0] != "image/gif" && $HTTP_POST_FILES['ufile']['type'][0] != "image/jpeg" && $HTTP_POST_FILES['ufile']['type'][0] != "image/bmp"){
    if ((
    $HTTP_POST_FILES['ufile']['type'][0] == "")==FALSE){
    echo
    "".$msgext1.$HTTP_POST_FILES['ufile']['name'][0].$msgext3.$HTTP_POST_FILES['ufile']['type'][0].$msgext4;
    exit;
    }
    }
    elseif (
    $HTTP_POST_FILES['ufile']['type'][1] != "image/png" && $HTTP_POST_FILES['ufile']['type'][1] != "image/gif" && $HTTP_POST_FILES['ufile']['type'][1] != "image/jpeg" && $HTTP_POST_FILES['ufile']['type'][1] != "image/bmp"){
    if ((
    $HTTP_POST_FILES['ufile']['type'][1] == "")==FALSE){
    echo
    "".$msgext1.$HTTP_POST_FILES['ufile']['name'][0].$msgext3.$HTTP_POST_FILES['ufile']['type'][1].$msgext4;
    exit;
    }
    }
    elseif (
    $HTTP_POST_FILES['ufile']['type'][2] != "image/png" && $HTTP_POST_FILES['ufile']['type'][2] != "image/gif" && $HTTP_POST_FILES['ufile']['type'][2] != "image/jpeg" && $HTTP_POST_FILES['ufile']['type'][2] != "image/bmp"){
    if ((
    $HTTP_POST_FILES['ufile']['type'][2] == "")==FALSE){
    echo
    "".$msgext1.$HTTP_POST_FILES['ufile']['name'][0].$msgext3.$HTTP_POST_FILES['ufile']['type'][2].$msgext4;
    exit;
    }
    }
    elseif (
    $HTTP_POST_FILES['ufile']['type'][3] != "image/png" && $HTTP_POST_FILES['ufile']['type'][3] != "image/gif" && $HTTP_POST_FILES['ufile']['type'][3] != "image/jpeg" && $HTTP_POST_FILES['ufile']['type'][3] != "image/bmp"){
    if ((
    $HTTP_POST_FILES['ufile']['type'][3] == "")==FALSE){
    echo
    "".$msgext1.$HTTP_POST_FILES['ufile']['name'][0].$msgext3.$HTTP_POST_FILES['ufile']['type'][3].$msgext4;
    exit;
    }
    }
    elseif (
    $HTTP_POST_FILES['ufile']['type'][4] != "image/png" && $HTTP_POST_FILES['ufile']['type'][4] != "image/gif" && $HTTP_POST_FILES['ufile']['type'][4] != "image/jpeg" && $HTTP_POST_FILES['ufile']['type'][4] != "image/bmp"){
    if ((
    $HTTP_POST_FILES['ufile']['type'][4] == "")==FALSE){
    echo
    "".$msgext1.$HTTP_POST_FILES['ufile']['name'][0].$msgext3.$HTTP_POST_FILES['ufile']['type'][4].$msgext4;
    exit;
    }
    }
    //else{
    if ((($HTTP_POST_FILES['ufile']['type'][0] == "")==FALSE) || (($HTTP_POST_FILES['ufile']['type'][1] == "")==FALSE) || (($HTTP_POST_FILES['ufile']['type'][2] == "")==FALSE) || (($HTTP_POST_FILES['ufile']['type'][3] == "")==FALSE) || (($HTTP_POST_FILES['ufile']['type'][4] == "")==FALSE)){

    /*echo "File Name :".$HTTP_POST_FILES['ufile']['name'][0]."<BR/>";
    echo "File Size :".$HTTP_POST_FILES['ufile']['size'][0]."<BR/>";
    echo "File Type :".$HTTP_POST_FILES['ufile']['type'][0]."<BR/>";
    echo "<img src=\"$path1\" width=\"300\" height=\"200\">";
    echo "<P>";

    echo "File Name :".$HTTP_POST_FILES['ufile']['name'][1]."<BR/>";
    echo "File Size :".$HTTP_POST_FILES['ufile']['size'][1]."<BR/>";
    echo "File Type :".$HTTP_POST_FILES['ufile']['type'][1]."<BR/>";
    echo "<img src=\"$path2\" width=\"150\" height=\"150\">";
    echo "<P>";

    echo "File Name :".$HTTP_POST_FILES['ufile']['name'][2]."<BR/>";
    echo "File Size :".$HTTP_POST_FILES['ufile']['size'][2]."<BR/>";
    echo "File Type :".$HTTP_POST_FILES['ufile']['type'][2]."<BR/>";
    echo "<img src=\"$path3\" width=\"150\" height=\"150\">";*/

    ///////////////////////////////////////////////////////

    while($row=mysql_fetch_array($query)){
    $tabella = $row[tabella];
    }

    $mul = 1;
    $numero_di_file_uppati = count($_FILE['ufile']['name']);
    $chiave_max_array = $numero_di_file_uppati-1;
    while (
    $mul<= $numero_di_file_uppati) {
    $ris = 5 * $mul;
    print(
    "5 * $mul = $ris<br>");
    $mul++;
    }
    /*while($row=$numero_di_file_uppati){
    mysql_query("INSERT INTO $tabella (titolo, url, peso, commento, datainvio, orainvio)
    VALUES ('i', 'i', 'i', 'i', 'i', 'i')");
    } */
    echo "fatto più o meno";

    $filesize1=$HTTP_POST_FILES['ufile']['size'][0];
    $filesize2=$HTTP_POST_FILES['ufile']['size'][1];
    $filesize3=$HTTP_POST_FILES['ufile']['size'][2];
    $filesize4=$HTTP_POST_FILES['ufile']['size'][3];
    $filesize5=$HTTP_POST_FILES['ufile']['size'][4];

    if(
    $filesize1 && $filesize2 && $filesize3 && $filesize4 && $filesize5 != 0) {echo "We have recieved your files";}
    }
    }
    }else{
    header("location: upurl.php");
    }
    }else{
    header("location: check.php");
    }
    ?>
    praticamente questo codice, esege l'upload di file che scelgo in un form prima. il form contiene un codice che, all'inizio è bottone dove scelgo un file. c'è anche un altro bottone, dove al click si aggiunge un altro bottone per la scelta di file. quindi si possono scegliere fino ad un massimo di 5 file o anche meno. dipende dall'utente. bene, ora, devo andare ad inserire in una tabella alcuni dati, che sono il nome del file scelto, il peso. bene, come fare?

    se non mi sono spiegato meglio:

    un utente sceglie un solo file, e preme invia. a questo punto il mio codice esegue l'upload di quel file e voglio che vada ad inserire le informazioni del file caricato nel database.

    se invece l'utente scegli più file, per esempio 2 e preme invia, che succede, il codice esegue l'upload dei file però poi deve anche andare ad inserire nella tabella il peso e il nome di uno, e poi il peso e il nome dell'altro, l'inserimento vale tante volte quando sono i numeri dei file scelti fino ad un massimo di 5.
    come fare?

  2. #2
    Guest

    Predefinito

    ... questo script è altamete a rischio sotto gli aspetti della sicurezza... utilizzi con troppa disinvoltura i cookie (leggendo lo script io potrei caricare i file a nome tuo autoimpostandomi un cookie).

    poi venendo al problema che hai esposto questo non puoi risolverlo se non fai un ciclo: questo si dovrà necessariamente ripetere tante volte quante sono i file uppati (come ti ho fatto vedere in altra sede) per fare un upload uno per uno dei file scelti.

    Se la scelta del ciclo ti "scoccia" devi obbligare l'utente a caricare tutti e 5 i file altrimenti è difficile gestire il tutto.

    poi ci sarebbero i vari header inviati dopo aver già generato output...
    Ultima modifica di miniscript : 15-03-2011 alle ore 17.51.50

  3. #3
    gabriele97 non è connesso Utente
    Data registrazione
    28-12-2009
    Messaggi
    134

    Predefinito

    si, so che non è sicuro .... infatti ho pensato che dopo aver eliminato questo problema, vado ad usare le sessioni. ritornando al problema, pensavo proprio ad un ciclo. ma come lo faccio?

  4. #4
    gabriele97 non è connesso Utente
    Data registrazione
    28-12-2009
    Messaggi
    134

    Predefinito

    risolto ... come? visto che non sono bravo, ho fatto un paio di IF (questi IF sono sempre utili :D)

    tra poco, cercherò pure di utilizzare le sessioni ... ciaooo

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •