Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13

Discussione: upload file duplicati

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    12

    upload file duplicati

    ciao a tutti.
    qualcuno è in grado di darmi una mano?
    dunque:
    lo script per fare l'upload di alcuni file su di una directory:

    (il file è uploadengine.php)

    <?
    $path="d:/inetpub/webs/xxxxxxxx/xxxxxxxx";
    if( $UploadedFile != none )
    {
    print("
    ");
    print("File name: $UploadedFile_name

    \n");
    print("File size: $UploadedFile_size

    \n");
    print("File type: $UploadedFile_type

    \n");
    print("
    ");
    print("
    ");
    if (copy( $UploadedFile , "$path/$UploadedFile_name" )){
    print "File correctly sended!!";
    print("
    ");
    print("
    ");
    }else{
    print "Upload error, retry please.
    ";
    print("
    ");
    print("
    ");
    }
    unlink($UploadedFile);
    }else{
    print "Error: no file.
    ";
    }
    ?>
    __________________________________________________ _____

    il form dal quale si selezionano e si inviano:

    <FORM ENCTYPE="multipart/form-data" ACTION="uploadengine.php" METHOD="post">
    <INPUT TYPE="hidden" name="MAX_FILE_SIZE" value="1024000">
    <INPUT NAME="UploadedFile" TYPE="file" class="bottone">




    <INPUT TYPE="submit" VALUE="Upload Art" class="bottone">


    </FORM>
    __________________________________________________ ______

    ho bisogno di inserire un controllo che eviti l'upload di file con nomi simili a quelli già presenti.
    insomma un check su $UploadedFile_name che mi impedisca di caricare un file con nome duplicato (permettendo di caricarlo mi sovrascrive il precedente)

    grazie,
    ciao

  2. #2
    Codice PHP:
    if (file_exists("$path/$UploadedFile_name"))
    {
     
    $i 1;
     while(
    "$path/{$i}{$UploadedFile_name}"$i++;


  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    12
    quando si dice "provvidenziale"
    grazie }gu|do[z]{®© !!
    se servisse a qualcuno il post:
    c'è una parentesi errata nella soluzione.
    soluzione corretta:
    _________________________________________________
    if (file_exists("$path/$UploadedFile_name"))
    {
    $i = 1;
    while("$path/{$i}{$UploadedFile_name}") $i++;
    }
    _________________________________________________
    Ho variato lo script, credo in questo caso sia più efficace.
    Un messaggio di errore avvisa del file duplicato, in questo modo:

    <?
    $path="d:/inetpub/webs/xxxxx/xxxxxxx/xxxxxxx";

    if (file_exists("$path/$UploadedFile_name"))
    {
    $UploadedFile = none;
    }

    if( $UploadedFile != none )
    {
    print("
    ");
    print("File name: $UploadedFile_name

    \n");
    print("File size: $UploadedFile_size

    \n");
    print("File type: $UploadedFile_type

    \n");
    print("
    ");
    print("
    ");
    if (copy( $UploadedFile , "$path/$UploadedFile_name" )){
    print "File correctly sended!!";
    print("
    ");
    print("
    ");
    }else{
    print "Upload error, retry please.
    ";
    print("
    ");
    print("
    ");
    }
    unlink($UploadedFile);
    }else{
    print "

    Error:



    No file, or file already exist.


    Try to change the name of the file or check size.

    ";
    }
    ?>
    ______________________________________________

  4. #4
    l'importante è capire quali strumenti abbiamo a disposizione, la logica ognuno se la sceglie come meglio crede


  5. #5

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    12
    ok, chiedo un altro aiutino!
    ho bisogno sullo stesso script di implementare un controllo sul formato (che già riconosce).
    Se il file da caricare non risulta un file di tipi immagine, niente upload. (solo jpg, gif ecc!)

    Ho iniziato così:

    <?
    $path="d:/inetpub/webs/xxxx/xxxxx";

    if (file_exists("$path/$UploadedFile_name"))
    {
    $UploadedFile = none;
    }

    if ( $UploadedFile_type != "image/*" )
    {
    $UploadedFile = none;
    }

    if( $UploadedFile != none )
    {
    print("
    ");
    print("File name: $UploadedFile_name

    \n");
    print("File size: $UploadedFile_size

    \n");
    print("File type: $UploadedFile_type

    \n");
    print("
    ");
    print("
    ");
    if (copy( $UploadedFile , "$path/$UploadedFile_name" )){
    print "File correctly sended!!";
    print("
    ");
    print("
    ");
    }else{
    print "Upload error, retry please.
    ";
    print("
    ");
    print("
    ");
    }
    unlink($UploadedFile);
    }else{
    print "

    Error:



    No file, or file already exist.


    Try to change the name of the file or check size.



    ";
    }
    ?>
    ______________________________________________

    non so se l' * viene considerato un carattere jolly in questo caso..
    o se ci sono errori di sintassi!
    Insomma ho bisogno di una mano perchè non funziona!
    grazie! cia!

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    12
    .....uppettino......

  8. #8
    io ho risolto lo stesso problema caricando prima il file e poi guardando l'estensione .gif .jpeg con substr() e nel caso cancellando il file indesiderato.. con opportuno messaggio di errore..

    ..IcE..
    visit the BEST italian fotolog http://www.ghiacciato.it/fotolog

    "Solo due cose sono infinite, l'universo e la stupidità dell'essere umano.. ma sulla prima ho ancora delle riserve.." A.Einstein

  9. #9
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    12
    beh si sarebbe meglio fare il controllo prima dell'upload, ma se il risultato è comunque lo stesso..
    nella directory ho anche dei file di formato non immagine che non dovrebbero essere cancellati...ma credo che basterebbe fare delle esclusioni...
    per il momento potrei risolverla così...
    solo un favore... non mastico molto php.. soprattutto per la sintassi..credi che potresti chiarirmi substr() un pochetto meglio?

    }gu|do[z]{®© tu che mi dici?

    cia

  10. #10
    il controllo sull'estensione lo puoi fare da javascript per evitare l'upload... poi lato server puoi implementare un controllo più rigido che non si basi sull'estensione ma sul mime type del file

    quanto al codice.. perdonami ma non ce la faccio. sono febbricitante e non ho proprio voglia.. cmq è smeplice:

    http://it.php.net/manual/it/function...ntent-type.php


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.