Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2000
    Messaggi
    39

    allegare un pdf in mail puro testo

    buongiorno ragazzi,

    ho un problema che non sono riuscito a risolvere guardando altri esempi che ho trovato sul forum del php; una pagina php che funziona bene, invia una mail a una casella di posta elettronica e il messaggio E' PURO TESTO (NO HTML). Tutti gli esempi che ho trovato sono per messaggi in html e sembra che non mi hanno aiutato dato che la mail parte ma sempre senza allegato. Allora vi chiedo, nel php standard quale riga va aggiunta se oltre al messaggio va sparato anche un file pdf predefinito ?

    ora sono qua:

    $messaggio.="Ecco allegato il file\n\n";
    $messaggio.="Cordiali Saluti.\n\n";
    $messaggio.="Lo Staff";
    @mail($_POST['email'],"Invio allegato",$messaggio,"From: miamail@miodominio.net");

    cosa va aggiunto ? mi potete aiutare (N.B. lasciando però la mail in formato testo e senza passare all'HTML) o indicarmi il link nel forum corretto;

    un grazie a tutti e buon Natale

  2. #2
    /* INIZIO: DESCRIZIONE MIME PER FILE DA ALLEGARE */
    $file_attach = "../salva/pdf/nomefile.pdf"; /*Inserire l'indirizzo del file che si vuole inviare come allegato*/
    // $filetype="text/plain"; /*Inserire il formato MIME del file da allegare*/
    $filetype="application/pdf"; /*Inserire il formato MIME del file da allegare*/
    $titolo="prenotazione.pdf"; /*Inserire il nome che si vuole dare all'allegato*/
    /* FINE: DESCRIZIONE MIME PER FILE DA ALLEGARE */


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


    /* INIZIO: INTESTAZIONE EMAIL */
    $intestazioni = "From: $from\nReply-To: $reply\nX-Mailer: Sismail Web Email Interface\nMIME-version: 1.0\nContent-type: multipart/mixed;\n boundary=\"Message-Boundary\"\nContent-transfer-encoding: 7BIT\nX-attachments: $titolo";


    $msg_body = $contenuto;
    $msg_body .= "\n\n--Message-Boundary\n";
    $msg_body .= "Content-type: $filetype; name=\"$titolo\"\n";
    $msg_body .= "Content-Transfer-Encoding: BASE64\n";
    $msg_body .= "Content-disposition: attachment; filename=\"$titolo\"\n\n";
    $msg_body .= "$encoded_attach\n";
    $msg_body .= "--Message-Boundary--\n";

    $esito = mail($destinatario, $oggetto, $msg_body, $intestazioni);



    tutte queste parti sono separati da invio perche sono spezzoni del mio codice che devi integrare al tuo, cerca di capire come inserire il codice anche se non credo sia complicato, am e funziona, spero possa aiutarti
    ciao
    http://www.perungiorno.it

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2000
    Messaggi
    39
    Chiedo scusa, ma con l'ASP per mandare un allegato basta una riga (Mailer.AddAttachment "e:\nomefile.pdf") e invece con php occorre fare una pappardella di righe e specificare le codifiche anche se si tratta di una mail puro testo?

    Speravo che il php fosse più flessibile...
    ma non esiste una semplice riga sufficiente anche per php ?

    grazie per qualsiasi suggerimento vogliate darmi, conosco poco il php

    saluti
    Schwan

  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2000
    Messaggi
    39
    ho provato con l'esempio che mi è stato dato e ora l'allegato viene spedito ma....purtroppo non considera tutto il testo della mail ovvero tutto il testo txt del messaggio che avevo scritto con $messaggio.="il mio testo puro txt\n";

    temo che siano le intestazioni che fanno sballare

    help

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2000
    Messaggi
    39
    o forse si tratta solo di rispettare l'ordine, prima una cosa e poi un'altra, dato che ora se sposto il codice relativo dell'allegato in alto, invece che in basso, la mail torna regolare e visibile, ma senza allegato....

  6. #6
    Utente di HTML.it
    Registrato dal
    Jun 2000
    Messaggi
    39

    dove e' l'errore ?

    ciao ragazzi,
    mi potete aiutare ?
    la mail arriva, l'allegato anche, ma non arriva il testo, quindi arriva il messaggio vuoto; dove ho sbagliato ? vi faccio vedere il codice usato, costruito in base ai vostri suggerimenti:

    $body=" onLoad=\"registration_ok()\"";
    $file_attach = "FILE.pdf";
    $filetype="text/plain";
    $filetype="application/pdf";
    $titolo="FILE.pdf";
    $filez = fopen($file_attach, "r");
    $contents = fread($filez, filesize($file_attach));
    $encoded_attach = chunk_split(base64_encode($contents));
    fclose($filez);
    $intestazioni = "From: mail@dominio.net\nReply-To: $reply\nX-Mailer: Sismail Web Email Interface\nMIME-version: 1.0\nContent-type: multipart/mixed;\n boundary=\"Message-Boundary\"\nContent-transfer-encoding: 7BIT\nX-attachments: $titolo";
    $messaggio.="Allego il file\n\n";
    $messaggio.="Grazie e cordiali saluti \n";
    $messaggio.="Lo Staff";
    $messaggio.="\n\n--Message-Boundary\n";
    $messaggio.="Content-type: $filetype; name=\"$titolo\"\n";
    $messaggio.="Content-Transfer-Encoding: BASE64\n";
    $messaggio.="Content-disposition: attachment; filename=\"$titolo\"\n\n";
    $messaggio.="$encoded_attach\n";
    $messaggio.="--Message-Boundary--\n";
    @mail($_POST['email'],"OK Iscrizione avvenuta",$messaggio,$intestazioni);

    dov'è l'errore per cui la mail arriva solo con l'allegato e senza il messaggio ??

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2000
    Messaggi
    39

    aiuto


    non trovo l'errore, qualcuno mi aiuta ?
    salterà all'occhio a qualcuno.....
    conosco asp ma non php e con asp è diverso....

  8. #8
    Utente di HTML.it
    Registrato dal
    Jun 2000
    Messaggi
    39
    niente...provo e riprovo ma niente....

    la mail arriva, ora arriva anche il testo correttamente ma non mi arriva il pdf leggibile

  9. #9
    Utente di HTML.it L'avatar di chris
    Registrato dal
    Sep 1999
    Messaggi
    1,568
    "Nei prossimi tre anni col mio governo vogliamo vincere anche il cancro, che colpisce ogni anno 250.000 italiani e riguarda quasi due milioni di nostri concittadini"

  10. #10
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    434
    forse l'asp sarà più facile, ma il php è più potente , e sai perchè? perchè l'asp scrivendo "Mailer.addattachment bla bla bla" succede tutto quello che hai letto lì. E il php è più flessibile perchè così l'asp codifica in base64, mentre php lo può fare in più codifiche.

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.