Re: E-mail sending attachment
Muzaffer Tolga Ozses <[email protected]> Wed, 18 Dec 2013 01:06:31 +0200
| Newsgroups | gmane.comp.php.drupal.devel |
|---|---|
| Message-ID | <CAMAQ3nJaHX7PkV2UOEWLzXaLRhbjc5C6efm6aZ1-j1hhKOJQkg@mail.gmail.com> |
--f46d044306a4a219e704edc2fa5a Content-Type: text/plain; charset=ISO-8859-1 Still no attachment :S On 18 December 2013 00:48, Paolo Mainardi <[email protected]> wrote: > Seems that there is a typo here: > > function pass2pdf_mail($key, &$message, $attachment) { > switch($key) { > case 'key': > $message['subject'] = $subject; > $message['body'][] = $body; > $message['attachments'][] = $attachment; > break; > } > } > > Must be: > > function pass2pdf_mail($key, &$message, $params) { > switch($key) { > case 'key': > $message['subject'] = $params['subject']; > $message['body'][] = $params['body']; > $message['attachments'][] = $params['attachment']; > break; > } > } > > > On Tue, Dec 17, 2013 at 11:37 PM, Muzaffer Tolga Ozses <[email protected]>wrote: > >> Hi, >> >> I've been trying to develop this module. It does what I need, with the >> exception of e-mailing a PDF file. What is wrong with my code? It gives me >> 'Undefined variable $attachment' and doesn't e-mail the attachment. >> >> function pass2pdf_email_pdf_to_user($form) { >> global $user; >> $account = $user; >> require(libraries_get_path('fpdf') . '/fpdf.php'); >> $pdf = new FPDF(); >> $pdf->AddPage(); >> $pdf->SetFont('Arial', 'B', 16); >> $pdf->Image(theme_get_setting('logo'), 10, 6, 30); >> $pdf->Cell(100, 100, $form['pass2pdf_pass']['#value']['pass1']); >> $pdf->Output(drupal_realpath('public://') . '/' . >> $form['account']['name']['#value'] . '.pdf'); >> $to = $form['account']['mail']['#value']; >> $from = variable_get('site_name') . "<" . variable_get('site_mail') . >> ">"; >> $subject = t('Your password from @site', array('@site' => >> variable_get('site_name'))); >> $body = t('Hello !user. Please find your password in the attached PDF >> file.', array('!user' => $form['account']['name']['#value'])); >> $attachment = array( >> 'filecontent' => file_get_contents(drupal_realpath('public://') . >> '/'. $form['account']['name']['#value'] . '.pdf'), >> 'filemime' => 'application/pdf', >> ); >> $params['subject'] = $subject; >> $params['body'] = $body; >> $params['attachment'] = $attachment; >> $message = drupal_mail('pass2pdf', 'key', $to, >> user_preferred_language($user), $params, $from, TRUE); >> if ($message) { >> drupal_set_message(t('E-mail sent successfully')); >> } >> } >> >> function pass2pdf_mail($key, &$message, $attachment) { >> switch($key) { >> case 'key': >> $message['subject'] = $subject; >> $message['body'][] = $body; >> $message['attachments'][] = $attachment; >> break; >> } >> } >> >> Regards, >> > > > > -- > [image: TWINBIT logo] <http://twinbit.it/> > > Paolo Mainardi > > *Twinbit Founder - CTO * > *www*: twinbit.it > *mobile*: (+39) 3401678089 > *skype*: paolo_mainardi > *linkedin*: paolomainardi <http://www.linkedin.com/in/paolomainardi> > *twitter*: @paolomainardi <http://twitter.com/paolomainardi> > *blog*: paolomainardi.com > --f46d044306a4a219e704edc2fa5a Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:courier = new,monospace">Still no attachment :S</div></div><div class=3D"gmail_extra"= ><br><br><div class=3D"gmail_quote">On 18 December 2013 00:48, Paolo Mainar= di <span dir=3D"ltr"><<a href=3D"mailto:[email protected]" target=3D"_bla= nk">[email protected]</a>></span> wrote:<br> <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p= x #ccc solid;padding-left:1ex"><div dir=3D"ltr">Seems that there is a typo = here:<div class=3D"im"><div><br></div><div><div class=3D"gmail_default" sty= le=3D"font-family:arial,sans-serif;font-size:12.800000190734863px"> <font face=3D"courier new, monospace">function pass2pdf_mail($key, &$me= ssage, $attachment) {</font></div> <div class=3D"gmail_default" style=3D"font-family:arial,sans-serif;font-siz= e:12.800000190734863px"><font face=3D"courier new, monospace">=A0 switch($k= ey) {</font></div><div class=3D"gmail_default" style=3D"font-family:arial,s= ans-serif;font-size:12.800000190734863px"> <font face=3D"courier new, monospace">=A0 =A0 case 'key':</font></d= iv><div class=3D"gmail_default" style=3D"font-family:arial,sans-serif;font-= size:12.800000190734863px"><font face=3D"courier new, monospace">=A0 =A0 = =A0 $message['subject'] =3D $subject;</font></div> <div class=3D"gmail_default" style=3D"font-family:arial,sans-serif;font-siz= e:12.800000190734863px"><font face=3D"courier new, monospace">=A0 =A0 =A0 $= message['body'][] =3D $body;</font></div><div class=3D"gmail_defaul= t" style=3D"font-family:arial,sans-serif;font-size:12.800000190734863px"> <font face=3D"courier new, monospace">=A0 =A0 =A0 $message['attachments= '][] =3D $attachment;</font></div><div class=3D"gmail_default" style=3D= "font-family:arial,sans-serif;font-size:12.800000190734863px"><font face=3D= "courier new, monospace">=A0 =A0 =A0 break;</font></div> <div class=3D"gmail_default" style=3D"font-family:arial,sans-serif;font-siz= e:12.800000190734863px"><font face=3D"courier new, monospace">=A0 }</font><= /div><div class=3D"gmail_default" style=3D"font-family:arial,sans-serif;fon= t-size:12.800000190734863px"> <font face=3D"courier new, monospace">}</font></div></div><div class=3D"gma= il_default" style=3D"font-family:arial,sans-serif;font-size:12.800000190734= 863px"><font face=3D"courier new, monospace"><br></font></div></div><div cl= ass=3D"gmail_default" style=3D"font-size:12.800000190734863px"> <font face=3D"courier new, monospace">Must be:</font></div><div class=3D"gm= ail_default" style=3D"font-size:12.800000190734863px"><font face=3D"courier= new, monospace"><br></font></div><div class=3D"gmail_default" style=3D"fon= t-size:12.800000190734863px"> <div class=3D"gmail_default" style=3D"font-family:arial,sans-serif"><font f= ace=3D"courier new, monospace">function pass2pdf_mail($key, &$message, = $params) {</font></div><div class=3D"gmail_default" style=3D"font-family:ar= ial,sans-serif"> <font face=3D"courier new, monospace">=A0 switch($key) {</font></div><div c= lass=3D"gmail_default" style=3D"font-family:arial,sans-serif"><font face=3D= "courier new, monospace">=A0 =A0 case 'key':</font></div><div class= =3D"gmail_default" style=3D"font-family:arial,sans-serif"> <font face=3D"courier new, monospace">=A0 =A0 =A0 $message['subject'= ;] =3D $params['subject'];</font></div><div class=3D"gmail_default"= style=3D"font-family:arial,sans-serif"><font face=3D"courier new, monospac= e">=A0 =A0 =A0 $message['body'][] =3D $params['body'];</fon= t></div> <div class=3D"gmail_default" style=3D"font-family:arial,sans-serif"><font f= ace=3D"courier new, monospace">=A0 =A0 =A0 $message['attachments'][= ] =3D $params['attachment'];</font></div><div class=3D"gmail_defaul= t" style=3D"font-family:arial,sans-serif"> <font face=3D"courier new, monospace">=A0 =A0 =A0 break;</font></div><div c= lass=3D"gmail_default" style=3D"font-family:arial,sans-serif"><font face=3D= "courier new, monospace">=A0 }</font></div><div class=3D"gmail_default" sty= le=3D"font-family:arial,sans-serif"> <font face=3D"courier new, monospace">}</font></div></div></div><div class= =3D"gmail_extra"><div><div class=3D"h5"><br><br><div class=3D"gmail_quote">= On Tue, Dec 17, 2013 at 11:37 PM, Muzaffer Tolga Ozses <span dir=3D"ltr">&l= t;<a href=3D"mailto:[email protected]" target=3D"_blank">[email protected]</a>&= gt;</span> wrote:<br> <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p= x #ccc solid;padding-left:1ex"><div dir=3D"ltr"><div class=3D"gmail_default= " style=3D"font-family:'courier new',monospace">Hi,</div><div class= =3D"gmail_default" style=3D"font-family:'courier new',monospace"> <br></div><div class=3D"gmail_default" style=3D"font-family:'courier ne= w',monospace"> I've been trying to develop this module. It does what I need, with the = exception of e-mailing a PDF file. What is wrong with my code? It gives me = 'Undefined variable $attachment' and doesn't e-mail the attachm= ent.</div> <div class=3D"gmail_default" style=3D"font-family:'courier new',mon= ospace"><br></div><div class=3D"gmail_default"><div class=3D"gmail_default"= ><font face=3D"courier new, monospace">function pass2pdf_email_pdf_to_user(= $form) {</font></div> <div class=3D"gmail_default"><font face=3D"courier new, monospace">=A0 glob= al $user;</font></div><div class=3D"gmail_default"><font face=3D"courier ne= w, monospace">=A0 $account =3D $user;</font></div><div class=3D"gmail_defau= lt"><font face=3D"courier new, monospace">=A0 require(libraries_get_path(&#= 39;fpdf') . '/fpdf.php');</font></div> <div class=3D"gmail_default"><font face=3D"courier new, monospace">=A0 $pdf= =3D new FPDF();</font></div><div class=3D"gmail_default"><font face=3D"cou= rier new, monospace">=A0 $pdf->AddPage();</font></div><div class=3D"gmai= l_default"> <font face=3D"courier new, monospace">=A0 $pdf->SetFont('Arial',= 'B', 16);</font></div> <div class=3D"gmail_default"><font face=3D"courier new, monospace">=A0 $pdf= ->Image(theme_get_setting('logo'), 10, 6, 30);</font></div><div = class=3D"gmail_default"><font face=3D"courier new, monospace">=A0 $pdf->= Cell(100, 100, $form['pass2pdf_pass']['#value']['pass1&= #39;]);</font></div> <div class=3D"gmail_default"><font face=3D"courier new, monospace">=A0 $pdf= ->Output(drupal_realpath('public://') . '/' . $form['= ;account']['name']['#value'] . '.pdf');</font><= /div> <div class=3D"gmail_default"><font face=3D"courier new, monospace">=A0 $to = =3D $form['account']['mail']['#value'];</font></div= ><div class=3D"gmail_default"><font face=3D"courier new, monospace">=A0 $fr= om =3D variable_get('site_name') . "<" . variable_get(= 'site_mail') . ">";</font></div> <div class=3D"gmail_default"><font face=3D"courier new, monospace">=A0 $sub= ject =3D t('Your password from @site', array('@site' =3D>= ; variable_get('site_name')));</font></div><div class=3D"gmail_defa= ult"><font face=3D"courier new, monospace">=A0 $body =3D t('Hello !user= . Please find your password in the attached PDF file.', array('!use= r' =3D> $form['account']['name']['#value']))= ;</font></div> <div class=3D"gmail_default"><font face=3D"courier new, monospace">=A0 $att= achment =3D array(</font></div><div class=3D"gmail_default"><font face=3D"c= ourier new, monospace">=A0 =A0 'filecontent' =3D> file_get_conte= nts(drupal_realpath('public://') . '/'. $form['account&= #39;]['name']['#value'] . '.pdf'),</font></div> <div class=3D"gmail_default"><font face=3D"courier new, monospace">=A0 =A0 = 'filemime' =3D> 'application/pdf',</font></div><div clas= s=3D"gmail_default"><font face=3D"courier new, monospace">=A0 );</font></di= v><div class=3D"gmail_default"> <font face=3D"courier new, monospace">=A0 $params['subject'] =3D $s= ubject;</font></div><div class=3D"gmail_default"><font face=3D"courier new,= monospace">=A0 $params['body'] =3D $body;</font></div><div class= =3D"gmail_default"> <font face=3D"courier new, monospace">=A0 $params['attachment'] =3D= $attachment;</font></div><div class=3D"gmail_default"><font face=3D"courie= r new, monospace">=A0 $message =3D drupal_mail('pass2pdf', 'key= ', $to, user_preferred_language($user), $params, $from, TRUE);</font></= div> <div class=3D"gmail_default"><font face=3D"courier new, monospace">=A0 if (= $message) {</font></div><div class=3D"gmail_default"><font face=3D"courier = new, monospace">=A0 =A0 drupal_set_message(t('E-mail sent successfully&= #39;));</font></div> <div class=3D"gmail_default"><font face=3D"courier new, monospace">=A0 }</f= ont></div><div class=3D"gmail_default"><font face=3D"courier new, monospace= ">}</font></div><div class=3D"gmail_default"><font face=3D"courier new, mon= ospace"><br> </font></div><div class=3D"gmail_default"><font face=3D"courier new, monosp= ace">function pass2pdf_mail($key, &$message, $attachment) {</font></div= ><div class=3D"gmail_default"><font face=3D"courier new, monospace">=A0 swi= tch($key) {</font></div> <div class=3D"gmail_default"><font face=3D"courier new, monospace">=A0 =A0 = case 'key':</font></div><div class=3D"gmail_default"><font face=3D"= courier new, monospace">=A0 =A0 =A0 $message['subject'] =3D $subjec= t;</font></div> <div class=3D"gmail_default"> <font face=3D"courier new, monospace">=A0 =A0 =A0 $message['body'][= ] =3D $body;</font></div><div class=3D"gmail_default"><font face=3D"courier= new, monospace">=A0 =A0 =A0 $message['attachments'][] =3D $attachm= ent;</font></div> <div class=3D"gmail_default"> <font face=3D"courier new, monospace">=A0 =A0 =A0 break;</font></div><div c= lass=3D"gmail_default"><font face=3D"courier new, monospace">=A0 }</font></= div><div class=3D"gmail_default"><font face=3D"courier new, monospace">}</f= ont></div><div class=3D"gmail_default"> <font face=3D"courier new, monospace"><br></font></div><div class=3D"gmail_= default"><font face=3D"courier new, monospace">Regards,</font></div></div><= /div> </blockquote></div><br><br clear=3D"all"><div><br></div></div></div><span c= lass=3D"HOEnZb"><font color=3D"#888888">-- <br><div><a href=3D"http://twinb= it.it/" style=3D"color:rgb(17,85,204);font-family:Consolas,Menlo,Monaco,= 9;Andale Mono WT','Andale Mono','Lucida Console','L= ucida Sans Typewriter','DejaVu Sans Mono','Bitstream Vera S= ans Mono','Liberation Mono','Nimbus Mono L','Courie= r New',Courier,monospace;font-size:x-small" target=3D"_blank"><img bord= er=3D"0" alt=3D"TWINBIT logo" width=3D"200" height=3D"46"></a><span style= =3D"font-family:Consolas,Menlo,Monaco,'Andale Mono WT','Andale = Mono','Lucida Console','Lucida Sans Typewriter','De= jaVu Sans Mono','Bitstream Vera Sans Mono','Liberation Mono= ','Nimbus Mono L','Courier New',Courier,monospace;font-= size:x-small">=A0</span><br style=3D"font-family:Consolas,Menlo,Monaco,'= ;Andale Mono WT','Andale Mono','Lucida Console','Lu= cida Sans Typewriter','DejaVu Sans Mono','Bitstream Vera Sa= ns Mono','Liberation Mono','Nimbus Mono L','Courier= New',Courier,monospace;font-size:x-small"> <br style=3D"font-family:Consolas,Menlo,Monaco,'Andale Mono WT',= 9;Andale Mono','Lucida Console','Lucida Sans Typewriter'= ;,'DejaVu Sans Mono','Bitstream Vera Sans Mono','Libera= tion Mono','Nimbus Mono L','Courier New',Courier,monosp= ace;font-size:x-small"> <font style=3D"font-family:arial,helvetica,sans-serif;color:rgb(51,51,51)">= <font size=3D"4">Paolo Mainardi</font>=A0<br></font><i>Twinbit Founder - CT= O<br style=3D"font-family:Consolas,Menlo,Monaco,'Andale Mono WT',&#= 39;Andale Mono','Lucida Console','Lucida Sans Typewriter= 9;,'DejaVu Sans Mono','Bitstream Vera Sans Mono','Liber= ation Mono','Nimbus Mono L','Courier New',Courier,monos= pace;font-size:x-small"> </i><br style=3D"font-family:Consolas,Menlo,Monaco,'Andale Mono WT'= ,'Andale Mono','Lucida Console','Lucida Sans Typewriter= ','DejaVu Sans Mono','Bitstream Vera Sans Mono','Li= beration Mono','Nimbus Mono L','Courier New',Courier,mo= nospace;font-size:x-small"> <font face=3D"Consolas, Menlo, Monaco, Courier New, Courier, monospace" col= or=3D"#666666" style=3D"font-family:Consolas,Menlo,Monaco,'Andale Mono = WT','Andale Mono','Lucida Console','Lucida Sans Typ= ewriter','DejaVu Sans Mono','Bitstream Vera Sans Mono',= 'Liberation Mono','Nimbus Mono L','Courier New',Cou= rier,monospace"><font face=3D"Consolas, Menlo, Monaco, Courier New, Courier= , monospace"><b>www</b>:=A0=A0=A0=A0=A0=A0<a href=3D"http://twinbit.it/" st= yle=3D"color:rgb(241,126,14)" target=3D"_blank">twinbit.it</a></font>=A0<br= > <font face=3D"Consolas, Menlo, Monaco, Courier New, Courier, monospace"><b>= mobile</b>:=A0=A0=A0<a value=3D"+393895122611" style=3D"color:rgb(17,85,204= )">(+39) 3401678089</a></font>=A0<br><font face=3D"Consolas, Menlo, Monaco,= Courier New, Courier, monospace"><b>skype</b>: =A0 =A0paolo_mainardi</font= >=A0<br> <font face=3D"Consolas, Menlo, Monaco, Courier New, Courier, monospace"><b>= linkedin</b>:=A0<a href=3D"http://www.linkedin.com/in/paolomainardi" style= =3D"color:rgb(241,126,14)" target=3D"_blank">paolomainardi</a></font>=A0<br= ><font face=3D"Consolas, Menlo, Monaco, Courier New, Courier, monospace"><b= >twitter</b>:=A0=A0<a href=3D"http://twitter.com/paolomainardi" style=3D"co= lor:rgb(241,126,14)" target=3D"_blank">@paolomainardi</a></font>=A0<br> <font face=3D"Consolas, Menlo, Monaco, Courier New, Courier, monospace"><b>= blog</b>:=A0=A0=A0=A0=A0<a href=3D"http://paolomainardi.com/" style=3D"colo= r:rgb(241,126,14)" target=3D"_blank">paolomainardi.com</a></font>=A0<br></f= ont></div> </font></span></div> </blockquote></div><br></div> --f46d044306a4a219e704edc2fa5a--