Visualizzazione dei risultati da 1 a 7 su 7

Discussione: Invio file per mail

  1. #1

    Invio file per mail

    Buongiorno ragazzi,
    ho un problema con l'invio di mail via php.
    Ho provato vari codici e metodi, ma al massimo sono riuscito a fare andare in loop il browser. Qualcuno saprebbe consigliarmi qualche classe o altro che mi permetta di inviare una mail tramite php con allegato?

    Vi ringrazio!

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    292
    Buongiorno fra83

    usi una classe in particolare per l'invio delle e-mail?

    tra le varie esistono phpmailer e swiftmailer che ti permettono di allegare files facilmente, e non solo

  3. #3
    Buongiorno a te,
    io ho provato ad utilizzare phpmailer http://phpmailer.worxware.com/ ma come detto prima il browser mi va in loop, non so sinceramente il perchè.
    Ho provato anche ad usare alcune classi di php fatte da altre persone (mail.class, mailer.class),
    ma il massimo risultato è quel loop.


  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    292
    dovresti postare il codice,
    prova a farci vedere quello scritto per phpmailer

  5. #5
    Codice PHP:
    <?php $mess="<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\"> <HTML><HEAD> 
    <META http-equiv=Content-Type content=\"text/html; charset=iso-8859-1\"> 
    <STYLE> H5 {text-align: justify; text-decoration: none; color: #333333; font-size: 12px; font-family: Arial} A:link, A:visited, A:hover { color: #FFcc00 } </STYLE> </HEAD> 
    <BODY bgColor=#ffffff link=#333333 alink=#333333 vlink=#333333> <DIV>
    <h5>BLA BLA BLA BLA. Questo è il corpo dell'email; si possono usare tutti i tag html, come se si trattasse di una pagina internet.</h5> 
    </BODY></HTML> "


    $e="mail@gmail.com"/*Inserire l'indirizzo email a cui si vuole spedire l'email*/ $ogg="Oggetto dell'email"/*Inserire l'oggetto dell'email da spedire*/ $mittente="mail@gmail.com"/*Inserire l'indirizzo email che verrà visulaizzato come mittente dell'email*/ 
    $reply="mail@gmail.com"/*Inserire l'indirizzo email a cui verranno inviate le risposte all'email inviata*/ 
    $titolo="cane.pdf"/*Inserire il nome che si vuole dare all'allegato*/ 
    $f="C:\Program Files (x86)\EasyPHP-12.1\www\Sito CUE\Sitook"/*Inserire l'indirizzo del file che si vuole inviare come allegato*/
     
    $filetype="application/pdf"/*Inserire il formato MIME del file da allegare*/
     /*Non modificare nulla al di sotto di questa linea*/ 
    $intestazioni "From: $mittente\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"
    $body_top "--Message-Boundary\n"$body_top .= "Content-type: text/html; charset=iso-8859-1\n"$body_top .= "Content-transfer-encoding: 7BIT\n"
    $body_top .= "Content-description: Mail message body\n\n"
    $msg_body $body_top $mess$filez fopen($f"r"); 
    $contents fread($filezfilesize($f)); 
    $encoded_attach chunk_split(base64_encode($contents)); fclose($filez); 
    $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"; if(!(@mail($e,$ogg,$msg_body$intestazioni))){ print "<H5>Invio della email fallito.</H5>";} ?>
    Questo mi restituisce l'errore


    Warning: fopen(C:\Program Files (x86)\EasyPHP-12.1\www\Sito CUE\Sitook): failed to open stream: Permission denied in C:\Program Files (x86)\EasyPHP-12.1\www\Sito CUE\Sitook\mailme.php on line 41

    Warning: fread() expects parameter 1 to be resource, boolean given in C:\Program Files (x86)\EasyPHP-12.1\www\Sito CUE\Sitook\mailme.php on line 42

    Warning: fclose() expects parameter 1 to be resource, boolean given in C:\Program Files (x86)\EasyPHP-12.1\www\Sito CUE\Sitook\mailme.php on line 44
    Invio della email fallito.

    grazie per la pazienza e l'aiuto!!

  6. #6
    guarda che il file non può trovarsi in un percorso locale del tuo pc, deve essere un indirizzo web

    se stai provando lo script con un server web installato sul tuo pc inoltre l'invio non funziona a meno che sul tuo pc non sia configurato un server smtp

    se lo stai provando online il file lo devi caricare sullo stesso dominio in cui gira lo script.

  7. #7
    Ops,
    ma visto che l'utilizzo finale sarà in locale (è una gestione interna di macchine fotocopiatrici) è possibile farlo funzionare in locale?

    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.