Visualizzazione dei risultati da 1 a 10 su 10

Discussione: Invio allegati...

  1. #1

    Invio allegati...

    Salve a tutti
    per prima cosa complimenti a tutti quelli del forum per il vostro lavoro... arrivo subito al punto
    E' possibile riuscire ad inviare un form mail PHP in formato excel o in html? Mi spiego meglio... ho sempre utilizzato lo script per l'invio dei dati e dopo la pressione del tasto "Invia" mi arrivava una mail con i dati contenuti nel form.
    Volevo sapere se era possibile inviare questi dati sottoforma di file excel (.xls) oppure in html per poter essere stampati sottoforma di tabella :rollo: , o anche come allegato (sempre come xls o html).
    Se avete qualche soluzione ve ne sarei grata
    Grazie

  2. #2
    si! puoi inviare sia allegati in mail che inviare direttamente la mail in formato html.
    io uso la classe phpmailer, è free e semplice da usare, la trovi qui: http://phpmailer.sourceforge.net/
    la classe ha molte altre funzioni integrate e vale davvero la pena darci almeno un'occhiata.

    oppure puoi guardare questa pillola:
    http://forum.html.it/forum/showthrea...hreadid=513009

    a te la scelta

    Talvolta anche una persona apparentemente inutile si rivela un abile samurai dalla forza di mille uomini, dimostrando di poter rinunciare alla vita e che il suo cuore si è completamente identificato con quello del suo padrone

  3. #3
    Grazie 13manuel84, ma ho provato lo script del secondo link pero' mi manda come allegato in email un file che gia esiste (allegato.pdf)... io cerco uno script che riesca a crearne uno nuovo (dopo che l'utente ha compilato il form) e me lo invii in email come tabella xls o html in modo da poterlo stampare .
    Quello di Sourceforge non mi e chiaro anche se sembra che faccia la stessa cosa... :master:
    Aiuto!

  4. #4
    Uppy

  5. #5
    dunque, io prendo in esempio la classe phpmailer perché ormai uso sempre quella; se tu vuoi inviare la mail in formato html, basta che ti prepari il testo come se fosse html e poi lo invii così com'è.

    Codice PHP:
    require("class.phpmailer.php");

    // prepari il messaggio che vuoi inviare
    $mess "<html>";
    $mess .= "<head>";
    // puoi allegare anche un style css, basta che passi come url quello assoluto
    $testo "<link href=\"http://www.tuosito.com/style.css\" rel=\"stylesheet\" type=\"text/css\">";
    $mess .= "</head>";
    $mess .= "<body>";
    $mess .= "<div class=\"unaclassedelfogliodistile\">";
    $mess .= "QUI CI METTI TUTTO IL TESTO CHE VUOI, VARIABILI PHP COMPRESE";
    $mess .= "</div>";
    $mess .= "</body>";
    $mess .= "</html>";

    $mail = new PHPMailer();
    $mail->From "indirizzo@email.it"// indirizzo da cui proviene la mail
    $mail->FromName "Nome abbinato all'indirizzo sopra";
    $mail->AddAddress("tuo@indirizzo.com""TuoNome");
        
    $mail->WordWrap 50;    // set word wrap to 50 characters
    $mail->IsHTML(true);     // set email format to HTML

    $mail->Subject "Oggetto della mail";
    $mail->Body    $mess// $mess conterrà il messaggio html
    $mail->AltBody "Non puoi vedere il contenuto della mail in quanto il tuo client non lo consente.";
        
    $mail->Send(); 
    naturalmente dovrai caricare la classe phpmailer nella stessa cartella dove avrai questi file.
    spero di esserti stato d'aiuto.
    credo che sia meglio scrivere il testocosì, piuttosto che creare un nuovo file, scriverci dentro, salvarlo ed allegarlo alla mail [sembra un pò macchinosa come cosa].
    comunque, con questa classe, se vuoi inviare un allegato basta che fai così:
    Codice PHP:
    $mail->AddAttachment("c:/temp/11-10-00.zip""new_name.zip");  // optional name 
    se quardi negli esempi che trovi sul sito di sourcefourge lo trovi!

    spero di esserti stato utile!
    Talvolta anche una persona apparentemente inutile si rivela un abile samurai dalla forza di mille uomini, dimostrando di poter rinunciare alla vita e che il suo cuore si è completamente identificato con quello del suo padrone

  6. #6
    Grazie per l'esempio 13manuel84, sono riuscita ad utilizzarlo per inviare mail html , ora devo cercare di creare una sessione per visualizzare il form prima dell'invio ed e fatta...
    Se hai dei suggerimenti mi saresti d'aiuto
    Ciao Grazie

  7. #7
    Utente di HTML.it L'avatar di homerbit
    Registrato dal
    Dec 2005
    residenza
    Roma
    Messaggi
    1,380
    Ciao a tutti...
    leggevo con attenzione questo post perchè mi trovo nello stesso problema di Kiara86
    Devo inviare i campi di un form in un file allegato.xls
    ed in più via html su qualsiasi client
    Bene...non riesco proprio a capire come poter realizzare e quindi inviare l'allegato .xls!
    Riguardo il testo della mail non ci sono problemi...già risolto.

    Grazie a tutti e spero di non esser stato ridondante (anche con la richiesta!)

  8. #8
    ma quindi per allegare un file bisogna prima caricarlo sul server con una normale funzione di upload?

  9. #9
    cazzata.

    basta recuperare il file nella cartella temporanea

    $attach = $_FILES["allegato"]["tmp_name"];
    $file_name = $_FILES["allegato"]["name"];

    e poi usare la funzione di phpmailer class

    $mail->AddAttachment($attach, $name = $file_name, $encoding = "base64", $type = "application/octet-stream");


    scusate

  10. #10
    Utente di HTML.it
    Registrato dal
    Oct 2000
    Messaggi
    508
    scusate se mi intrometto
    io devo inviare dal sito con un form un file
    ma non parte ho provato così

    il form è questo
    http://www.somit.it/email/index.html

    il cod preso da sopra
    mi date qualche suggerimento tnks


    Codice PHP:
    <?php 
    require_once("class.phpmailer.php");

    $mail = new PHPMailer();
    $mail->From     $_POST['from']; 
    $mail->FromName $_POST['nome_mittente'];
    $mail->AddAddress($_POST['mail'];);
    $mail->IsHTML(true);  
    $mail->Subject  =  $oggetto;
    $mail->Body     =  $bodyhtml;
    $mail->AltBody  =  $bodytxt;
    //$mail->AddAttachment("public/filename_1.zip"); 
    //$mail->AddAttachment("public/filename_2.zip"); 


    $attach $_FILES["allegato"]["tmp_name"];
    $file_name $_FILES["allegato"]["name"];
    $mail->AddAttachment($attach$name $file_name$encoding "base64"$type "application/octet-stream");

    if(!
    $mail->Send()){
        echo 
    "Si è verificato un errore nell'invio della mail";
    }else{
        echo 
    "Mail inviata con successo";
    }
    ?>
    Raul

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.