Pomoc - Szukaj - U¿ytkownicy - Kalendarz
Pe³na wersja: Problem wys³ania maila z za³±cznikiem
Forum PHP.pl > Forum > Przedszkole
Balon
  1. <?php
  2. /**
  3.  * Mail z załącznikiem
  4.  * @author Krzysztof 'Balon' Jagiełło <balonyo@gmail.com>
  5.  * @version 1.0.0
  6.  */
  7. srand((double)microtime()*1000000);
  8. $iMarker = md5(uniqid(rand())); 
  9.  
  10. class attachmail
  11. {
  12. var $sOdbiorca;
  13. var $sTitle;
  14. var $sNadawca;
  15. var $sNadawcaMail;
  16. var $sHeaders;
  17.  
  18. var $aAttachs = array();
  19.  
  20. var $sTrescListu;
  21. var $sText;
  22.  
  23. var $iMarker;
  24.  
  25. function attachmail( $sOdbiorca, $sTitle, $sNadawca, $sNadawcaMail, $sTrescListu, $aAttachs )
  26. {
  27. $this->sOdbiorca = $sOdbiorca;
  28. $this->sTitle = $sTitle;
  29. $this->sNadawca = $sNadawca;
  30. $this->sNadawcaMail = $sNadawcaMail;
  31. $this->aAttachs = $aAttachs;
  32. $this->sTrescListu = $sTrescListu;
  33.  
  34. srand((double)microtime()*1000000);
  35. $this->iMarker = md5(uniqid(rand())); 
  36.  
  37. $this->setParam();
  38. $this->send();
  39. }
  40.  
  41. function setParam()
  42. {
  43. $this->sHeaders = "From: ".$this->sNadawca." <".$this->sNadawcaMail.">n";
  44. $this->sHeaders .= "MIME-Version: 1.0n";
  45. $this->sHeaders .= "Content-Type: multipart/mixed;n";
  46. $this->sHeaders .= "tboundary="___".$this->iMarker."=="";
  47.  
  48. $this->sText = "--___".$this->iMarker."==n";
  49. $this->sText .= "Content-Type: text/plain; charset="iso-8859-2"n";
  50. $this->sText .= "Content-Transfer-Encoding: 8bitn";
  51. $this->sText .= "n".$this->sTrescListu."n"; 
  52. }
  53.  
  54. function send()
  55. {
  56. foreach( $this->aAttachs as $attach )
  57. {
  58. $this->addAttach( $attach );
  59. }
  60.  
  61. if ( mail( $this->sOdbiorca, $this->sTitle, $this->sText, $this->sHeaders ) )
  62. {
  63. echo 'E-mail został wysłany.';
  64. }
  65. else
  66. {
  67. echo 'E-mail nie mógł zostać wysłany.';
  68. } 
  69. }
  70.  
  71. function addAttach( $sFile )
  72. {
  73. if ( is_uploaded_file ( $_FILES[$sFile]['tmp_name'] ) )
  74. {
  75. /*
  76. $this->sText .= '--___'.$this->iMarker.'==n';
  77. $this->sText .= 'Content-Type: image/gifn';
  78. $this->sText .= 'Content-Disposition: attachment;n';
  79. $this->sText .= ' filename="'.$_FILES[$sFile]['name'].'"n';
  80. $this->sText .= 'Content-Transfer-Encoding: base64nn';
  81. $oFile = fopen( $_FILES[$sFile]['tmp_name'], 'rc' );
  82. $mDane  = fread( $oFile, filesize( $_FILES[$sFile]['tmp_name'] ) );
  83. fclose( $oFile );
  84. $this->sText .= chunk_split( base64_encode( $mDane ) );
  85. $this->sText .= '--___'.$this->iMarker.'==--n';*/
  86.  
  87. $this->sText .= '--___'.$this->iMarker.'==n';
  88. $this->sText .= "nContent-Type: image/gif;n";
  89. $this->sText .= "name="".$_FILES[$sFile]['name'].""n";
  90. $this->sText .= "Content-Disposition: attachment;n";
  91. $this->sText .= "filename="".$_FILES[$sFile]['name'].""n";
  92. $this->sText .= "Content-Transfer-Encoding: base64nn";
  93. $oFile = fopen( $_FILES[$sFile]['tmp_name'], 'rc' );
  94. $mDane  = fread( $oFile, filesize( $_FILES[$sFile]['tmp_name'] ) );
  95. fclose( $oFile );
  96. $this->sText .= chunk_split( base64_encode( $mDane ) );
  97. $this->sText .= "nn--___".$this->iMarker."==--n";
  98. }
  99.  
  100.  
  101. }
  102. }
  103. if( isset( $_POST['send'] ) )
  104. {
  105. new attachmail( 'balonyo@gmail.com', 'Tytul', 'Balon', 'balon@pliki.pl', 'blabla', array( 'plik', 'plik1' ) );
  106. }
  107.  
  108. ?>


dostaje maila o takiej tresci

Cytat
blabla
--___cb97f681846af61460a72da0467a62bf==\n
Content-Type: image/gif;
name="oznacz.gif"
Content-Disposition: attachment;
filename="oznacz.gif"
Content-Transfer-Encoding: base64

R0lGODlhuAARAKIAAAAAAP///1d/PuHp2////wAAAAAAAAAAACH5BAEAAAQALAAAAAC4ABEAAAPv
OLrc/jDKSau9OOvNu/9gKI5kaZ5oqooCJrQhvM7LK9Oucg8701+9H67GIg6BOuRIeGTmfLxXVKqT
2aZQXvLKJXJbsHC18RWHd9R0soq+asFpq7S7PbPlEbTXuHXcxG9kfVprYHuEhV56WX1WfIhwUGZ+
g3qOgJRZmGeGjI2EjoOgbIpUiaJYmnOmoWuBRjadfJ1ysnCmmaOutIi9NZGHqLyjP5uQrpW6rcet
f57Dk6h5rHOwcbeChavNapeks2q/i3SguFOb16RuvZzHqUcbTjjyEvQZ9vBL+bnxJPj7AAMKHEiw
oMGDCBMqXMhQYQIAOw==


a calkowita tresc maila wyglada tak

Cytat
X-Gmail-Received: 42c8ad79203d75bbb01dc3cf09d137fe9cd2602f
Delivered-To: balonyo@gmail.com
Received: by 10.66.224.16 with SMTP id w16cs827753ugg;
Mon, 24 Jul 2006 11:54:56 -0700 (PDT)
Received: by 10.49.41.18 with SMTP id t18mr3725763nfj;
Mon, 24 Jul 2006 11:54:56 -0700 (PDT)
Return-Path: <bzdura@bzdury.pl>
Received: from server.toon.pl (ns68.serveradmin.pl [80.86.83.219])
by mx.gmail.com with ESMTP id c10si3534271nfb.2006.07.24.11.54.55;
Mon, 24 Jul 2006 11:54:56 -0700 (PDT)
Received-SPF: pass (gmail.com: domain of bzdura@bzdury.pl designates 80.86.83.219 as permitted sender)
Received: from apache by server.toon.pl with local (Exim 4.54)
id 1G55aw-0003CI-US
for balonyo@gmail.com; Mon, 24 Jul 2006 20:55:59 +0200
To: balonyo@gmail.com
Subject: Tytul
From: Balon <balon@pliki.pl>
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="___cb97f681846af61460a72da0467a62bf=="
Message-Id: <E1G55aw-0003CI-US@server.toon.pl>
Date: Mon, 24 Jul 2006 20:55:58 +0200

--___cb97f681846af61460a72da0467a62bf==
Content-Type: text/plain; charset="iso-8859-2"
Content-Transfer-Encoding: 8bit

blabla
--___cb97f681846af61460a72da0467a62bf==\n
Content-Type: image/gif;
name="oznacz.gif"
Content-Disposition: attachment;
filename="oznacz.gif"
Content-Transfer-Encoding: base64

R0lGODlhuAARAKIAAAAAAP///1d/PuHp2////wAAAAAAAAAAACH5BAEAAAQALAAAAAC4ABEAAAPv
OLrc/jDKSau9OOvNu/9gKI5kaZ5oqooCJrQhvM7LK9Oucg8701+9H67GIg6BOuRIeGTmfLxXVKqT
2aZQXvLKJXJbsHC18RWHd9R0soq+asFpq7S7PbPlEbTXuHXcxG9kfVprYHuEhV56WX1WfIhwUGZ+
g3qOgJRZmGeGjI2EjoOgbIpUiaJYmnOmoWuBRjadfJ1ysnCmmaOutIi9NZGHqLyjP5uQrpW6rcet
f57Dk6h5rHOwcbeChavNapeks2q/i3SguFOb16RuvZzHqUcbTjjyEvQZ9vBL+bnxJPj7AAMKHEiw
oMGDCBMqXMhQYQIAOw==


--___cb97f681846af61460a72da0467a62bf==--


o co chodzi ? co robie nie tak ze nie dochodzi ten plik ?

ps. nie wiem czemu ale cos mi do kodu przed cudzyslowami wrzucilo slashe... ale trudn winksmiley.jpg
nitro18
A nie lepiej skorzystaæ z PHPMAILera?

kod:

  1. <? 
  2.  
  3. require("class.phpmailer.php");
  4.  
  5. $mail = new PHPMailer();
  6.  
  7. $mail->From  = "l";
  8. $mail->FromName = "List manager";
  9. $mail->Host  = "";
  10. $mail->Mailer  = "smtp";
  11. $mail->SMTPAuth = true;
  12. $mail->Username = "";
  13. $mail->Password = "";
  14. //w³±cz html
  15. $mail->IsHTML = true;
  16.  
  17. //kodowanie
  18. $mail->CharSet = "iso-8859-2";
  19.  
  20. //potwierdzenie przeczytania
  21. //$mail->ConfirmReadingTo = "aaa@127.0.0.1";
  22.  
  23. $mail->ContentType = "text/plain" ;
  24.  
  25. //do³±cza za³±czniki (podaj ¶cie¿kê do pliku któy ma zostaæ do³±czony)
  26. //$mail->AddAttachment("test.png");
  27.  
  28. //priorytet 1 - H, 3- N, 5 - L
  29. $mail->Priority = 1 ;
  30.  
  31.  
  32. $mail->SMTPDebug = false;
  33.  
  34. //czas 
  35. //$mail->Timeout = 120;
  36.  
  37.  
  38. $mail->WordWrap = 0 ;
  39.  
  40. //dodaje adres
  41. //$mail->AddAddress (string $address, [string $name = ""]) 
  42.  
  43. //bcc
  44. //$mail->AddBCC (string $address, [string $name = ""]) 
  45.  
  46. //cc
  47. //$mail->AddCC ("aaa@127.0.0.1", "Woj"); 
  48.  
  49. $mail->SetLanguage("pl", "language");
  50.  
  51.  
  52.  
  53. $mail->Body = "How are you? `1234567890-=qwertyuiop<br>n[]asdfghjkl;'zxcvbnm,./êó±¶³¿¼æñ";
  54. $mail->AddAddress("jarek@bystrzyca.info.pl");
  55.  
  56.  
  57. if($mail->Send())
  58. echo "Wys³ano!<br>";
  59.  
  60.  
  61.  
  62.  //$mail->ClearAddresses();ClearAllRecipients();ClearAddresses();ClearAttachments*();ClerBCCs () 
  63. //ClearBCCs () 
  64. //ClearCCs () 
  65. //ClearCCs () 
  66. //ClearCustomHeaders () 
  67. //ClearCustomHeaders () 
  68. //ClearReplyTos () 
  69. //Clears all recipients assigned in the ReplyTo array. Returns void.
  70. //ClearReplyTos () 
  71. $mail->SMTPClose();
  72.  
  73. ?>
To jest wersja lo-fi g³ównej zawarto¶ci. Aby zobaczyæ pe³n± wersjê z wiêksz± zawarto¶ci±, obrazkami i formatowaniem proszê kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.