Visualizzazione risultati 1 fino 5 di 5

Discussione: Problema funzione file_exists()

  1. #1
    Guest

    Predefinito Problema funzione file_exists()

    Sto cercando di migliorare il mio script di caricamento dei files.
    In pratica voglio far sì che se qualcuno carica un file che già esiste venga fermato il caricamento e avvertito quel qualcuno di rinominare il file.
    Scrivo:
    Codice PHP:
    <?php
    $sorgente
    = $_FILES['file']['tmp_name'];
    $directory = "_altervista_ht/";
    $nome = basename($_FILES['file']['name']);//29
    $dir = '_altervista_ht/'.$nome;
    /***** Controllo Estensione del File *****/
    $tipofile = pathinfo($nome);
    $estensione = $tipofile['extension'];
    $fileicon = array('png','bmp','jpg','gif','mp3','xml','txt','pdf','doc','xls','rar','zip');
    if (!
    file_exists($dir)) {
    if (
    in_array($tipofile['extension'], $fileicon)){
    move_uploaded_file($sorgente, $directory.$nome);
    }
    }
    else {
    //40
    echo "<script type=\"text/javascript\">\n";
    echo
    "window.alert('Esiste già un file con ".$nome." come nome. Rinomina il tuo file e riprova');\n";
    echo
    "</script>\n";
    }
    if (!
    $sorgente) {
    echo
    "Errore nel caricamento del file<br>";
    echo
    "<a href=\"invia.html\">Torna indietro</a>\n";
    }
    else {
    echo
    "File inviato con successo<br>";//50
    echo "Il link del tuo file &egrave;:";
    echo
    "<a href=\"http://www.gabryhacker.altervista.org/_altervista_ht/$nome\">$nome</a><br>";
    }
    else {
    echo
    "<script type=\"text/javascript\">\n";
    echo
    "window.alert('Non puoi inviare questo tipo di file');";
    echo
    "</script>\n";
    }
    ?>
    Ma mi da errore:
    Codice:
    Parse error: syntax error, unexpected T_ELSE in /membri/gabryhacker/file.php on line 54
    Non capisco dove sbaglio.
    Qualcuno mi darebbe una mano?

    Edit:
    Non fate caso ai numeri commenati, mi sono segnato i numeri delle righe per facilitare il conto

  2. #2
    L'avatar di saitfainder
    saitfainder non è connesso Sëniör Stäff
    Data registrazione
    06-12-2002
    Residenza
    Torino
    Messaggi
    8,715

    Predefinito

    L'ultima "if" ha due "else"


    «È una mia peculiarità distorcere la verità e inventarne di nuove.»
    «I tuoi orientamenti hanno su di me un effetto prossimo allo zero.»


  3. #3
    Guest

    Predefinito

    Grazie mille, adesso funziona.
    Però se provo a caricare un file che esiste già non me lo carica, ma mette il link al file.
    Come posso rimediare?

  4. #4
    Guest

    Predefinito

    Scusami...non credo sia tanto difficile ^^
    Codice PHP:
    $pathfilenome = "/membri/gabryhacker/files/$nomefile";

    if (
    file_exists($pathfilenome)) {
    echo
    "Devi cambiare il nome del file, questo esiste!";
    /**** CODICE X CAMBIARLO ****/
    } else {
    /**** CODICE X FARE L'UPLOAD ****/
    }
    Ciao! ^^

  5. #5
    Guest

    Predefinito

    Forse non hai capito. Io voglio far sparire il link, che compare lo stesso anche se il file esiste già

Regole di scrittura

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