Visualizzazione dei risultati da 1 a 4 su 4

Discussione: Allegare file dal pc

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    28

    Allegare file dal pc

    Ciao A tutti ragazzi..
    non so se sono nella sezione giusta..scusatemi..

    in una pagina web vorrei potere permettere ai visitatori di mandarmi un file attraverso un form
    questo file deve essere sfogliato nel proprio pc..

    per questa cosa serve un Database??e poi è possibile farlo in html??php??
    io poi lo dovrei ricevere sotto forma di email

    "oppure una soluzione come quella che cè in questo forum cioè allegare un file"e lasciarlo in una pagina ben precisa che non sia forum

    Grazie anticipatamente

    Antonio

  2. #2
    Per fare quanto richiedi ti serve un supporto lato Server (in ASP, ad esempio), che ti permetta di:
    1) far fare all'utente l'upload del file che ha selezionato dal proprio pc
    2) configurare un messaggio di posta che raccolga i dati della form (se ci sono)
    3) allegare a tale messaggio di posta il file che è stato uploadato

    Non c'è bisogno di database.

    Io l'ho fatto normalmente diverse volte usando ASP, e penso che si possa fare benissimo anche in PHP. Devi soltanto avere un supporto lato server e conoscere uno di questi linguaggi.

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    28
    Grazie atrebor12

    Ho fatto un form di prova invia l email ma non mi fa visualizzare ne l allegato ne il contenuto tel testo

    dove sbaglio il codice??

    ___________FORM

    <form action="invia.php" enctype="multipart/form-data" method="post">
    Destinatario: <input type="text" name="destinatario">
    Soggetto: <input type="text" name="soggetto">
    Allegato: <input type="file" name="allegato">
    Testo:<textarea name="contenuto" rows="15" cols="40"></textarea>
    <input type="submit" value="Invia la mail">
    </form>


    _____________FILE Invia .php_______________________


    <?php
    //leggiamo i dati dal modulo
    $destinatario = $_POST["destinatario"];
    $soggetto = $_POST["soggetto"];
    $contenuto = $_POST["contenuto"];
    // settiamo qualche variabile per comodita
    $attach = $_FILES["allegato"]["tmp_name"];
    $file_name = $_FILES["allegato"]["name"];
    $file_type = $_FILES["allegato"]["type"];
    $file_size = $_FILES["allegato"]["size"];
    $boundary = md5(uniqid(microtime()));
    //apriamo l’allegato
    $file = @fopen($attach, "r");
    $contents = @fread($file, $file_size);
    $encoded_attach = chunk_split(base64_encode($contents));
    @fclose($file);
    //settiamo le intestazioni della mail
    $mail_headers .= "MIME-version: 1.0\n";
    $mail_headers .= "Content-type: multipart/mixed; boundary=\"$boundary\"\n";
    $mail_headers .= "Content-transfer-encoding: 7BIT\n";
    $mail_headers .= "X-attachments: $file_name\n";
    //settiamo il corpo della mail
    $mail_body = "–$boundary\n";
    $mail_body .= "Content-Type: text/plain; charset=us-ascii\n";
    $mail_body .= "Content-Transfer-Encoding: 7bit\n\n";
    $mail_body .= "$contenuto\n\n";
    $mail_body .= "–$boundary\n";
    $mail_body .= "Content-type: $file_type; name=\"$file_name\"\n";
    $mail_body .= "Content-Transfer-Encoding: BASE64\n";
    $mail_body .= "Content-disposition: attachment; filename=\"$attach_name\"\n\n";
    $mail_body .= "$encoded_attach\n";
    $mail_body .= "–$boundary–\n";
    // infine inviamo la mail
    if(@mail($destinatario, $soggetto, $mail_body, $mail_headers)) {
    echo "Mail inviata.";
    } else {
    echo "Mail non inviata.";
    }
    ?>

    MI PUOI AIUTARE????????

  4. #4

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.