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

Discussione: inviare allegato word

  1. #1

    inviare allegato word

    Ciao, sono in grado di inviare un allegato pdf con la funzione mail di php, ma se invio un allegato word, la webmail o il client non mi riconosce che è un word e mi chiede con quale prog. aprire il file.

    per inviare il pdf ho utilizzato il mime application/pdf, mentre per il doc ho visto che bisogna usaer application/msword.


    come posso sistemare questo problema?

    grazie a tutti ciao

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    867
    si il tipo e' giusto..... quindi non dipende da quello, ti posto un pezzo di mail che funziona correttamente con un allegato word... ho appena provato con un mio script e funziona...


    codice:
    Content-type: application/msword;
     name="nomefile.doc"
    Content-Transfer-Encoding: BASE64
    Content-Disposition: inline;
     filename="nomefile.doc"
    No pvt per sollecitare risposte, grazie.

  3. #3
    ciao, grazie .

    è normale quindi che se utilizzo tutto il codice per inviare un pdf e combio da application/pdf a application/msword, non deve funzionare.

    nel senso...
    il codice che hai scritto tut, per inviare correttametne un allegato di word, mentre il codice che si trova anche in html.it per inviare un pdf.



    in sostanza non basta cambiare application/pdf in appalication/msword perchè funzioni, VERO?

    GRAZIE CIAO

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    867
    Bho io uso sempre questo e non mi ha mai dato problemi con nessun tipo di file... anche con i pdf...

    codice:
    Content-type: application/pdf;
     name="mms.pdf"
    Content-Transfer-Encoding: BASE64
    Content-Disposition: inline;
     filename="mms.pdf"
    No pvt per sollecitare risposte, grazie.

  5. #5
    ok, grazie. provo e ti faccio sapere

  6. #6
    ciao, preferirei se mi mostrassi tutto il codice che usi perchè non capisco molto se confronto il tuo codice con quello letto da html.it

    cioè:

    $headers = "From: <io@io.it>\n" .
    $headers = $headers . "Content-type: application/pdf;name="mms.pdf" Content-Transfer-Encoding: BASE64
    Content-Disposition: inline;
    filename="mms.pdf"

    e poi basta mail($dest, $ogg, $testo, $headers)


    grazie mille
    ciao

  7. #7
    ciao, riusciresti a postarmi il codice che usi tu per favore?

    grazie ciao

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    867
    Quello che ti serve ce l'ho dentro ad una classe enorme che fa anche altre cose.... ti ho scritto il punto nevralgico.... cioe' quello che stra prima dell'allegato.... se mettendolo cosi' non va... vuol dire che il problema sta da un'altra parte, tipo nei primi headers.... piuttosto posta tu il codice...
    dal pezzettino che hai postato non si capisce nulla

    No pvt per sollecitare risposte, grazie.

  9. #9
    ciao, questo è il mio codice. l'invio di un pdf avviene correttamente, anche con il riconoscimento appena uno lo seleziona.
    mentre con l'invio di un file word, il file arriva, ma non viene visto come file di word.

    prova a dare un occhio e dirmi come fare, se puoi. grazei

    $intestazione_messaggio = "--Message-Boundary\n" .
    "Content-type: text/html; charset=iso-8859-1\n" .
    "Content-transfer-encoding: 7BIT\n" .
    "Content-description: Mail message body\n\n";

    $testo_messaggio = "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">" .
    "<HTML>" .
    "<HEAD><META http-equiv=Content-Type content=\"text/html; charset=iso-8859-1\"></HEAD>" .
    "<BODY>" .
    nl2br($record_lettera['testo']) .
    "</BODY>" .
    "</HTML>";
    $messaggio = $intestazione_messaggio . $testo_messaggio;

    //ALLEGATO: INIZIO.
    $titolo_file = $record_lettera['titolo_allegato'];
    $percorso_file = $record_lettera['percorso_allegato'];

    $estensione_allegato = substr($nome_allegato, strlen($nome_allegato) -3, 3);
    switch ($estensione_allegato)
    {
    case "pdf":
    $filetype = "application/pdf";
    break;
    case "doc":
    $filetype = "application/msword";
    break;
    }
    $headers = "From: $mittente\nReply-To: $reply\nX-Mailer: Sismail Web Email Interface\n" .
    "MIME-version: 1.0\nContent-type: multipart/mixed;\n " .
    "boundary=\"Message-Boundary\"\nContent-transfer-encoding: 7BIT\n" .
    "X-attachments: $titolo_file";

    $filez = fopen($percorso_file, "r");
    $contents = fread($filez, filesize($percorso_file));
    $encoded_attach = chunk_split(base64_encode($contents));
    fclose($filez);
    //ALLEGATO: FINE;

    $messaggio = $messaggio . "\n\n--Message-Boundary\n" .
    "Content-type: $filetype; name=\"$percorso_file\"\n" .
    "Content-Transfer-Encoding: BASE64\n" .
    "Content-disposition: attachment; filename=\"$titolo_file\"\n\n" .
    "$encoded_attach\n" .
    "--Message-Boundary--\n";


    mail ($destinatario, $oggetto, $messaggio, $headers);



    grazie ciao

  10. #10
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    867
    Ma come puo' funzionare con un pdf ?? ci sono degli errori che lo rendono impossibile....

    Ad esempio:

    Codice PHP:
     $estensione_allegato substr($nome_allegatostrlen($nome_allegato) -33); 
    $nome_allegato non esiste..... come fa ad estrarre l'estensione ??

    No pvt per sollecitare risposte, grazie.

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.