[PHP] Mail : Mime

Pagina: 1
Acties:

  • vinnux
  • Registratie: Maart 2001
  • Niet online
De Mail functie van PHP is een zeer krahctige die erg veel kan. Doch een beetje moelijk om er zo maar ff een Mime message mee te versturen.

Nu heb ik zelf een klasse gemaakt die dit soort messages met attachements en text/plain en text.html in elkaar zet.
Dit heb ik gedaan door veel te kijken naar outlook messages.
Ik moest ergens een voorbeeld uit halen natuurlijk he :9.

Maar ik wil graag weten of het goed is wat ik doe. Is er ergens een fatsoenlijke tutorial voor het in elkaar zetten van mime messages en welke headers je wel en niet mag gebruiken. Is er ergens een soort van staandaard gedefineerd :?
Kom nou niet aan met die RFC documenten, want die heb ik wel gevonden, maar das nogal zware kost !.

Als iemand mij class in php wil testen/zien ofzo, meld het dan maar dan zet ik hem er op.

Dus weet iemand een goede tutorial ?

En nog een klein dingetjes ik gebruik charsets, zoals "iso-8859-1", maar zijn er parsers zodat ik stukken tekst naar deze charsets kan parsen ?

Voor de mensen die willen weten hoe zo een messag eruit ziet :
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
To: ToPerson1 <jezelf@ergens.nl>,ToPerson0 <ToEmail0@email.nl>,<ToEmail1@email.nl>
Message-Id: <The Id>
Cc: "CcPerson0" <CcEmail0@email.nl>
Bcc: "BccPerson0" <BccEmail0@email.nl>
From: "FromPerson" <FromEmail@email.nl>
Reply-To: <ReplyEmail@mail.nl>
Date: Fri, 26 Jul 2002 19:44:51 +0200
Organization: The Organization
MIME-Version: 1.0
Content-Type: multipart/mixed;
    boundary="VGouwMail_787ccacc4082c9d62242affc8c4f5d70_BoUnDaRy0"
X-Priority: 1
X-Mailer: VGouwMail


This is a multi-part message in MIME format.

--VGouwMail_787ccacc4082c9d62242affc8c4f5d70_BoUnDaRy0
Content-Type: multipart/alternative;
    boundary="VGouwMail_47bf344f4f1ad665a8ed4ca78ce4dd55_BoUnDaRy1"

VGouwMail_47bf344f4f1ad665a8ed4ca78ce4dd55_BoUnDaRy1
Content-Type: text/plain;
    charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

VGouwMail


This is a MIME message from VGouwMail!

text/html.


--VGouwMail_47bf344f4f1ad665a8ed4ca78ce4dd55_BoUnDaRy1
Content-Type: text/html;
    charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

VGouwMail
This is a MIME message from VGouwMail!
text/html.


--VGouwMail_47bf344f4f1ad665a8ed4ca78ce4dd55_BoUnDaRy1--

--VGouwMail_787ccacc4082c9d62242affc8c4f5d70_BoUnDaRy0
Content-Type: application/octet-stream;
    name="Mail.class.php"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
    filename="Mail.class.php"

PD8NCmluY2x1ZGV....

--VGouwMail_787ccacc4082c9d62242affc8c4f5d70_BoUnDaRy0--

  • gorgi_19
  • Registratie: Mei 2002
  • Nu online

gorgi_19

Kruimeltjes zijn weer op :9

Volgens mij staat hierin wel e.e.a. beschreven:

[url="http://www.phpbuilder.com/columns/kartic20000807.php3"]http://www.phpbuilder.com/columns/kartic20000807.php3[/url]

In ieder geval attachments, headers, etc. worden behandeld.

Op [url="http://www.google.nl/search?hl=nl&ie=UTF-8&oe=UTF-8&q=Mime+Message+email+PHP&lr="]http://www.google.nl/search?hl=nl&ie=UTF-8&oe=UTF-8&q=Mime+Message+email+PHP&lr=[/url] staan nog meer mogelijkheden (zeker als je nog tutorial toevoegd).

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

over die kleine dingetjes: php heeft een aantal functies waarmee je een string om kunt bouwen naar een ander formaat, van 7 bits naar 8 bits bijvoorbeeld, of naar base64... [url="http://www.php.net/base64_encode"]http://www.php.net/base64_encode[/url], [url="http://www.php.net/imap_8bit"]http://www.php.net/imap_8bit[/url], verder kun je zelf daar even zoeken...

  • vinnux
  • Registratie: Maart 2001
  • Niet online
Nou hier dan de php code in een hele ruwe form. :)
Zal het nog mooi aanpassen !
POSIX doet een beetje raar met php gevalletjes, dus <?
$mail = new VgouwMail();<blockquote><font size="1" face="verdana, arial, helvetica">code:</font><hr><font face="courier, fixedsys, lucida console"><nobr>$mail->setSubject('The&nbsp;Subject');
$mail->setReply('ReplyEmail@mail.nl');
$mail->setFrom(&quot;FromEmail@email.nl&quot;,&quot;FromPerson&quot;);
$mail->setOrganization('The&nbsp;Organization');
$mail->setDate(time()-(3600*30));
$mail->setId('The&nbsp;Id');
$mail->setPriority(1);
$mail->addHeader('x-ikke','ja&nbsp;ik!');
//$mail->removeHeader('x-ikke');
//$mail->clearHeaders();
//TO&nbsp;CC&nbsp;BCC
$mail->addSendT0(&quot;jezelf@ergens.nl&quot;,&quot;ToPerson1&quot;);
$mail->addSendT0(&quot;ToEmail0@email.nl&quot;,&quot;ToPerson0&quot;);
$mail->addSendT0(&quot;ToEmail1@email.nl&quot;);
$mail->addSendCC(&quot;CcEmail0@email.nl&quot;,&quot;CcPerson0&quot;);
$mail->addSendBCC(&quot;BccEmail0@email.nl&quot;,&quot;BccPerson0&quot;);
//$mail->clearSendTO();
//$mail->clearSendCC();
//$mail->clearSendBCC();
//Attachements
$mail->addAttachement(basename($PHP_SELF));
//$mail->removeAttachement(basename($PHP_SELF));
//$mail->clearAttachements();


$mail->setMailHtml('<h1>VGouwMail</h1>
This&nbsp;is&nbsp;a&nbsp;MIME&nbsp;message&nbsp;from&nbsp;VGouwMail!<br>
<b>text/html</b>.
');
$mail->setMailPlain(&quot;VGouwMail\n\n
This&nbsp;is&nbsp;a&nbsp;MIME&nbsp;message&nbsp;from&nbsp;VGouwMail!\n
text/html.
&quot;);

$mail->mail();


class&nbsp;VGouwMail&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/**
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*Arrays&nbsp;containing&nbsp;To,&nbsp;Cc&nbsp;and&nbsp;Bcc&nbsp;email&nbsp;adresses&nbsp;and&nbsp;names.
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**/
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;$sendTO&nbsp;&nbsp;=&nbsp;Array();
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;$sendTOName&nbsp;&nbsp;=&nbsp;Array();
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;$sendCC&nbsp;&nbsp;=&nbsp;Array();
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;$sendCCName&nbsp;&nbsp;=&nbsp;Array();
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;$sendBCC&nbsp;=&nbsp;Array();
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;$sendBCCName&nbsp;=&nbsp;Array();
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;$from&nbsp;=&nbsp;'';
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;$fromName&nbsp;=&nbsp;'';&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;$reply&nbsp;=&nbsp;'';
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;$replyName&nbsp;=&nbsp;'';
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;$errors&nbsp;=&nbsp;'';
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;$errorsName&nbsp;=&nbsp;'';
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;$organization&nbsp;=&nbsp;'';
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;$subject&nbsp;=&nbsp;'';
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;$attachements&nbsp;=&nbsp;Array();
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;$otherHeaders&nbsp;=&nbsp;Array();
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;$priority&nbsp;=&nbsp;3;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;$mailDate&nbsp;=&nbsp;FALSE;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;$textPlain;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;$textPlain;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;$textHtml;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;$xmailer&nbsp;='VGouwMail';
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;$boundries&nbsp;=&nbsp;Array();
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;$messageId&nbsp;=&nbsp;'';
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;CosinMail(){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;setId($id){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$ok&nbsp;=&nbsp;FALSE;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$id&nbsp;=&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;trim($id);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(is_string($id)&nbsp;||&nbsp;is_integer($id)){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this->messageId&nbsp;=&nbsp;$id;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$ok&nbsp;=&nbsp;TRUE;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;$ok;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;getBoundry($nr){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$boundry&nbsp;=&nbsp;null;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;(!isset($this->boundries[$nr])&nbsp;||&nbsp;in_array($boundry,$this->boundries)){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;srand((double)microtime()*96545624);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this->boundries[$nr]&nbsp;=&nbsp;$this->xmailer.'_'.md5(uniqid(rand())).'_BoUnDaRy'.$nr;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;$this->boundries[$nr];
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;setMailPlain($msg){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$ok&nbsp;=&nbsp;FALSE;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(is_string($msg)&nbsp;||&nbsp;is_integer($msg)){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this->textPlain&nbsp;=&nbsp;$msg;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$ok&nbsp;=&nbsp;TRUE;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;$ok;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;setMailHtml($msg){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$ok&nbsp;=&nbsp;FALSE;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(is_string($msg)&nbsp;||&nbsp;is_integer($msg)){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this->textHtml&nbsp;=&nbsp;$msg;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$ok&nbsp;=&nbsp;TRUE;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;$ok;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;setDate($mailDate){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$ok&nbsp;=&nbsp;FALSE;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if((is_integer($mailDate)&nbsp;&&&nbsp;$mailDate&nbsp;>&nbsp;-1)&nbsp;||&nbsp;$mailDate&nbsp;===&nbsp;FALSE){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this->mailDate&nbsp;=&nbsp;$mailDate;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$ok&nbsp;=&nbsp;TRUE;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;$ok;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;getHeaders(){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;=&nbsp;null;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if($this->messageId&nbsp;!==&nbsp;'')
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;.=&nbsp;'Message-Id:&nbsp;<'.$this->messageId.&quot;>\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$nbo&nbsp;=&nbsp;count($this->sendCC);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if($nbo&nbsp;>&nbsp;0){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;.='Cc:&nbsp;';
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for($nr&nbsp;=&nbsp;0&nbsp;;&nbsp;$nr&nbsp;<&nbsp;$nbo&nbsp;;&nbsp;$nr++){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(isset($this->sendCCName[$this->sendCC[$nr]]))
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;.=&nbsp;'&quot;'&nbsp;.$this->sendCCName[$this->sendCC[$nr]]&nbsp;.'&quot;&nbsp;';
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;.=&nbsp;'<'.$this->sendCC[$nr].'>';
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if($nr&nbsp;<&nbsp;$nbo-1)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;.=',';&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;.=&nbsp;&quot;\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$nbo&nbsp;=&nbsp;count($this->sendBCC);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if($nbo&nbsp;>&nbsp;0){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;.='Bcc:&nbsp;';
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for($nr&nbsp;=&nbsp;0&nbsp;;&nbsp;$nr&nbsp;<&nbsp;$nbo&nbsp;;&nbsp;$nr++){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(isset($this->sendBCCName[$this->sendBCC[$nr]]))
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;.=&nbsp;'&quot;'&nbsp;.$this->sendBCCName[$this->sendBCC[$nr]]&nbsp;.'&quot;&nbsp;';
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;.=&nbsp;'<'.$this->sendBCC[$nr].'>';
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if($nr&nbsp;<&nbsp;$nbo-1)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;.=',';&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;.=&nbsp;&quot;\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if($this->from&nbsp;!==&nbsp;''){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;.=&nbsp;'From:&nbsp;';
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if($this->fromName&nbsp;!==&nbsp;'')
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd.=&nbsp;'&quot;'.$this->fromName.'&quot;&nbsp;';
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;.=&nbsp;'<'.$this->from.'>'.&quot;\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if($this->reply&nbsp;!==&nbsp;''){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;.=&nbsp;'Reply-To:&nbsp;';
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if($this->replyName&nbsp;!==&nbsp;'')
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;.=&nbsp;'&quot;'.$this->replyName.'&quot;&nbsp;';
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;.=&nbsp;'<'.$this->reply&nbsp;.'>'&nbsp;.&quot;\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if($this->errors&nbsp;!==&nbsp;''){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;.=&nbsp;'Errors-To:&nbsp;';
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if($this->errorsName&nbsp;!==&nbsp;'')
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;.=&nbsp;'&quot;'.$this->errorsName.'&quot;&nbsp;';
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;.=&nbsp;'<'.$this->errors&nbsp;.'>'&nbsp;.&quot;\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;.=&nbsp;'Date:&nbsp;';
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if($this->mailDate&nbsp;!==&nbsp;FALSE)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;.=&nbsp;date('r',$this->mailDate)&nbsp;.&quot;\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;.=&nbsp;&nbsp;date('r')&nbsp;.&quot;\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if($this->organization&nbsp;!==&nbsp;'')
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;.=&nbsp;'Organization:&nbsp;'.$this->organization.&quot;\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;.='MIME-Version:&nbsp;1.0'.&quot;\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;.='Content-Type:&nbsp;multipart/mixed;'.&quot;\r\n\t&quot;.'boundary=&quot;'.$this->getBoundry(0).'&quot;'.&quot;\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if($this->priority&nbsp;!==&nbsp;3){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;.=&nbsp;'X-Priority:&nbsp;'&nbsp;.$this->priority&nbsp;.&quot;\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;.=&nbsp;'X-Mailer:&nbsp;'&nbsp;.$this->xmailer.&quot;\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$nbo&nbsp;=&nbsp;count($this->otherHeaders);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$keys&nbsp;=&nbsp;array_keys($this->otherHeaders);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for($nr&nbsp;=&nbsp;0&nbsp;;&nbsp;$nr&nbsp;<&nbsp;$nbo&nbsp;;&nbsp;$nr++){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;.=&nbsp;$keys[$nr]&nbsp;.':&nbsp;'&nbsp;.$this->otherHeaders[$keys[$nr]];
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;$hd;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;getTo(){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$nbo&nbsp;=&nbsp;count($this->sendTO);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for($nr&nbsp;=&nbsp;0&nbsp;;&nbsp;$nr&nbsp;<&nbsp;$nbo&nbsp;;&nbsp;$nr++){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(isset($this->sendTOName[$this->sendTO[$nr]]))
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$to&nbsp;.=&nbsp;'&quot;'.$this->sendTOName[$this->sendTO[$nr]]&nbsp;.'&quot;';
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$to&nbsp;.=&nbsp;'<'.$this->sendTO[$nr].'>';
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if($nr&nbsp;<&nbsp;$nbo-1)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$to&nbsp;.=',';&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;$to;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;getMessage(){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$msg&nbsp;=&nbsp;&quot;This&nbsp;is&nbsp;a&nbsp;multi-part&nbsp;message&nbsp;in&nbsp;MIME&nbsp;format.\r\n\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$msg&nbsp;.=&nbsp;'--'.$this->getBoundry(0)&nbsp;.&quot;\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$msg&nbsp;.='Content-Type:&nbsp;multipart/alternative;'.&quot;\r\n\t&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$msg&nbsp;.='boundary=&quot;'.$this->getBoundry(1).&quot;\&quot;\r\n\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$msg&nbsp;.=&nbsp;$this->getBoundry(1)&nbsp;.&quot;\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$msg&nbsp;.=&nbsp;'Content-Type:&nbsp;text/plain;'&nbsp;.&quot;\r\n\t&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$msg&nbsp;.=&nbsp;'charset=&quot;iso-8859-1&quot;'&nbsp;.&quot;\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$msg&nbsp;.=&nbsp;'Content-Transfer-Encoding:&nbsp;quoted-printable'.&quot;\r\n\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$msg&nbsp;.=&nbsp;$this->textPlain&nbsp;.&quot;\r\n\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$msg&nbsp;.=&nbsp;'--'.$this->getBoundry(1)&nbsp;.&quot;\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$msg&nbsp;.=&nbsp;'Content-Type:&nbsp;text/html;'&nbsp;.&quot;\r\n\t&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$msg&nbsp;.=&nbsp;'charset=&quot;iso-8859-1&quot;'&nbsp;.&quot;\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$msg&nbsp;.=&nbsp;'Content-Transfer-Encoding:&nbsp;quoted-printable'.&quot;\r\n\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$msg&nbsp;.=&nbsp;$this->textHtml&nbsp;.&quot;\r\n\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$msg&nbsp;.=&nbsp;'--'.$this->getBoundry(1)&nbsp;.&quot;--\r\n\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$nbo&nbsp;=&nbsp;count($this->attachements);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$keys&nbsp;=&nbsp;array_keys($this->attachements);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for($nr&nbsp;=&nbsp;0&nbsp;;&nbsp;$nr&nbsp;<&nbsp;$nbo&nbsp;;&nbsp;$nr++){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$fileName&nbsp;=&nbsp;basename($keys[$nr]);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$extension&nbsp;=&nbsp;substr(strrchr($keys[$nr],&nbsp;&quot;.&quot;),1);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$msg&nbsp;.=&nbsp;'--'.$this->getBoundry(0)&nbsp;.&quot;\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$msg&nbsp;.=&nbsp;'Content-Type:&nbsp;'.$this->attachements[$keys[$nr]].';'.&quot;\r\n\t&quot;.'name=&quot;'.$fileName.'&quot;'&nbsp;.&quot;\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$msg&nbsp;.=&nbsp;'Content-Transfer-Encoding:&nbsp;base64'&nbsp;.&quot;\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$msg&nbsp;.=&nbsp;'Content-Disposition:&nbsp;attachment;'.&quot;\r\n\t&quot;.'filename=&quot;'.$fileName.'&quot;'.&quot;\r\n\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$msg&nbsp;.=&nbsp;$this->encodeAttachement($keys[$nr]).&quot;\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$msg&nbsp;.=&nbsp;'--'.$this->getBoundry(0)&nbsp;.&quot;--\r\n&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;$msg;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;mail(){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$to&nbsp;=&nbsp;$this->getTo();
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$hd&nbsp;=&nbsp;$this->getHeaders();
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$msg&nbsp;=$this->getMessage();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this->boundries&nbsp;=&nbsp;Array();
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mail($to,$this->subject,$msg,$hd);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo('<pre>'.htmlspecialchars('To:&nbsp;'.$to.&quot;\r\n&quot;.$hd&nbsp;).&quot;\r\n\r\n&quot;.$msg.'</pre>');
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;setPriority($priority){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$ok&nbsp;=&nbsp;FALSE;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$priority&nbsp;=&nbsp;(integer)&nbsp;$priority;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if($priority&nbsp;>&nbsp;0&nbsp;&&&nbsp;$priority&nbsp;<&nbsp;6){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this->priority&nbsp;=&nbsp;$priority;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$ok&nbsp;=&nbsp;TRUE;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;$ok;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/**
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;[public&nbsp;boolean]
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Adds&nbsp;an&nbsp;file&nbsp;as&nbsp;an&nbsp;attachement&nbsp;to&nbsp;the&nbsp;mail.
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;When&nbsp;the&nbsp;file&nbsp;exists&nbsp;and&nbsp;the&nbsp;file&nbsp;is&nbsp;readable&nbsp;the&nbsp;attachement&nbsp;is&nbsp;added&nbsp;and&nbsp;true&nbsp;is&nbsp;returned.
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;When&nbsp;the&nbsp;file&nbsp;can&nbsp;not&nbsp;be&nbsp;found&nbsp;is&nbsp;not&nbsp;readable&nbsp;or&nbsp;is&nbsp;an&nbsp;directory&nbsp;false&nbsp;is&nbsp;returned.
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;addAttachement($file,$mimeType&nbsp;=&nbsp;null){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$ok&nbsp;=&nbsp;FALSE;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$file&nbsp;=&nbsp;trim($file);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(!is_dir($file)&nbsp;&&&nbsp;file_exists($file)&nbsp;&&&nbsp;is_readable($file)&nbsp;&&&nbsp;!isset($atachements[$file])){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if($mimeType&nbsp;===&nbsp;null){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$extension&nbsp;=&nbsp;substr(strrchr($file,&nbsp;&quot;.&quot;),1);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$mimeType&nbsp;=&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;getMimeType($extension);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this->attachements[$file]&nbsp;=&nbsp;$mimeType;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$ok&nbsp;=&nbsp;TRUE;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;$ok;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/**
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;[public&nbsp;boolean]
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Removes&nbsp;an&nbsp;attachement&nbsp;from&nbsp;the&nbsp;message.
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;When&nbsp;the&nbsp;attachement&nbsp;with&nbsp;the&nbsp;specified&nbsp;name&nbsp;is&nbsp;not&nbsp;an&nbsp;attachement&nbsp;false&nbsp;is&nbsp;returned&nbsp;els&nbsp;true.
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;removeAttachement($file){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$removed&nbsp;=&nbsp;FALSE;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(isset($this->attachements[$file])){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset($this->attachements[$file]);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/**
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;[private&nbsp;string]
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Base64&nbsp;encodes&nbsp;an&nbsp;file.&nbsp;On&nbsp;succes&nbsp;the&nbsp;ecode&nbsp;file&nbsp;is&nbsp;returnes&nbsp;as&nbsp;an&nbsp;string&nbsp;els&nbsp;false&nbsp;is&nbsp;returned.
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;encodeAttachement($file){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$encoded&nbsp;=&nbsp;FALSE;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$file&nbsp;=&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;trim($file);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(file_exists($file)&nbsp;&&&nbsp;is_readable($file)){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$fp&nbsp;=&nbsp;fopen($file,'r');
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$encoded&nbsp;=&nbsp;chunk_split(base64_encode(fread($fp,&nbsp;filesize($file))));
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&a

  • vinnux
  • Registratie: Maart 2001
  • Niet online
Ja messages kunnen te groot worden !
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
'mid'     =&gt; 'audio/midi',
              'midi'    =&gt; 'audio/midi',
              'kar'     =&gt; 'audio/midi',
              'mpga'    =&gt; 'audio/mpeg',
              'mp2'     =&gt; 'audio/mpeg',
              'mp3'     =&gt; 'audio/mpeg',
              'aif'     =&gt; 'audio/x-aiff',
              'aiff'    =&gt; 'audio/x-aiff',
              'aifc'    =&gt; 'audio/x-aiff',
              'ram'     =&gt; 'audio/x-pn-realaudio',
              'rm'  =&gt; 'audio/x-pn-realaudio',
              'rpm'     =&gt; 'audio/x-pn-realaudio-plugin',
              'ra'  =&gt; 'audio/x-realaudio',
              'wav'     =&gt; 'audio/x-wav',
              'pdb'     =&gt; 'chemical/x-pdb',
              'xyz'     =&gt; 'chemical/x-xyz',
              'bmp'     =&gt; 'image/bmp',
              'gif'     =&gt; 'image/gif',
              'ief'     =&gt; 'image/ief',
              'jpeg'    =&gt; 'image/jpeg',
              'jpg'     =&gt; 'image/jpeg',
              'jpe'     =&gt; 'image/jpeg',
              'png'     =&gt; 'image/png',
              'tiff'    =&gt; 'image/tiff',
              'tif'     =&gt; 'image/tiff',
              'wbmp'    =&gt; 'image/vnd.wap.wbmp',
              'ras'     =&gt; 'image/x-cmu-raster',
              'pnm'     =&gt; 'image/x-portable-anymap',
              'pbm'     =&gt; 'image/x-portable-bitmap',
              'pgm'     =&gt; 'image/x-portable-graymap',
              'ppm'     =&gt; 'image/x-portable-pixmap',
              'rgb'     =&gt; 'image/x-rgb',
              'xbm'     =&gt; 'image/x-xbitmap',
              'xpm'     =&gt; 'image/x-xpixmap',
              'xwd'     =&gt; 'image/x-xwindowdump',
              'igs'     =&gt; 'model/iges',
              'iges'    =&gt; 'model/iges',
              'msh'     =&gt; 'model/mesh',
              'mesh'    =&gt; 'model/mesh',
              'silo'    =&gt; 'model/mesh',
              'wrl'     =&gt; 'model/vrml',
              'vrml'    =&gt; 'model/vrml',
              'css'     =&gt; 'text/css',
              'html'    =&gt; 'text/html',
              'htm'     =&gt; 'text/html',
              'asc'     =&gt; 'text/plain',
              'txt'     =&gt; 'text/plain',
              'rtx'     =&gt; 'text/richtext',
              'rtf'     =&gt; 'text/rtf',
              'sgml'    =&gt; 'text/sgml',
              'sgm'     =&gt; 'text/sgml',
              'tsv'     =&gt; 'text/tab-separated-values',
              'wml'     =&gt; 'text/vnd.wap.wml',
              'wmls'    =&gt; 'text/vnd.wap.wmlscript',
              'etx'     =&gt; 'text/x-setext',
              'xml'     =&gt; 'text/xml',
              'mpeg'    =&gt; 'video/mpeg',
              'mpg'     =&gt; 'video/mpeg',
              'mpe'     =&gt; 'video/mpeg',
              'qt'  =&gt; 'video/quicktime',
              'mov'     =&gt; 'video/quicktime',
              'avi'     =&gt; 'video/x-msvideo',
              'movie'   =&gt; 'video/x-sgi-movie',
              'ice'     =&gt; 'x-conference/x-cooltalk',

              'default' =&gt; 'application/octet-stream' // this is default for extensions not in list
              );

        function getMimeType($extension){
            global $MAIL_MIME_TYPES;
            $mimeType =  $MAIL_MIME_TYPES['default'];
            if ( isset($MAIL_MIME_TYPES[$extension])){
                $mimeType = $MAIL_MIME_TYPES[$extension];
            }
            return $mimeType;
        }

?&gt;

Verwijderd

no offence, maar ik hoop niet dat je verwacht dat we je code gaan nakijken ;)

  • vinnux
  • Registratie: Maart 2001
  • Niet online
Op zondag 28 juli 2002 13:02 schreef jurriebur het volgende:
no offence, maar ik hoop niet dat je verwacht dat we je code gaan nakijken ;)
Nou eigenlijk wel :9.
Nee hoor, code werkt, zitten nog wat kleine foutjes in en misschien moet ik het opslitsen in meerdere klasses, maar dat ga ik de komende dagen maar eens doen.

  • LuCarD
  • Registratie: Januari 2000
  • Niet online

LuCarD

Certified BUFH

Leuke code...

deze gaat bij mijn bookmarks... :)

vraagje.... waarom dit
PHP:
1
&lt;?function getMimeType($extension){                  global $MAIL_MIME_TYPES;                  $mimeType =  $MAIL_MIME_TYPES['default'];                  if ( isset($MAIL_MIME_TYPES[$extension])){                        $mimeType = $MAIL_MIME_TYPES[$extension];                  }                  return $mimeType;            }?&gt;

en niet dit
PHP:
1
&lt;?function getMimeType($extension){                  global $MAIL_MIME_TYPES;                  if ( isset($MAIL_MIME_TYPES[$extension])){                        $mimeType = $MAIL_MIME_TYPES[$extension];                  }                  else {                         $mimeType =  $MAIL_MIME_TYPES['default'];                  }                  return $mimeType;            }?&gt;

En waarom uberhaubt een global? Globals gebruiken is een beetje on-java achtig...

En jij als java promoter ... :)

Programmer - an organism that turns coffee into software.


  • vinnux
  • Registratie: Maart 2001
  • Niet online
Nou antwoord op vraag 1 : Waarom dit en niet dat ? :9
De code is korter en omdat default values altijd goed zijn zie ik geen reden om ze niet de initiele waarde te geven.

Doch is het voor mij eigenlijk ook gewoonte om het op de tweede manier te doen, maar als je de rest van de functies bekijkt in de klasse gebeurt het ook op deze manier. De var $ok heeft de default waarde FALSE, en kan later op TRUE worden gezet. In dat licht heb ik dat denk ik gedaan.*D

Over de vraag over die global wil ik het volgende zeggen.
PHP is van nature uit een procedurele taal met een minimale ondersteuning van objecten (OO). Aangezien OO niet volledig ondersteunt wordt heb ik er voor gekozen om het beste van de OO wereld en de procedurele wereld te combineren. Ik bedoel ze hebben jaren lang procedureel geprogrammeerd, dan zal het ook wel zijn goede kanten hebben toch :?

In principe zitten die MIME_TYPES global en de functie in een apart include bestand. Eigenlijk is het zonde om hier en object van te maken ik bedoel het is een arraytje met waarden en een functie die er een waarde uit haald. In java zou het dus al een static class worden met een static final String[] en een static final String getMimeType();
Aangezien dat gehele ding static is heeft het dus niks meer met OO te maken. Ook is deze array niet specifiek voor de class mail. Ik gebruik hem ook ergens anders voor. Dus ja als iets static final in java zou zijn kan ik het net zo goed procedureel maken toch, en klasse eromheen bouwen is dan alleen maar ballast en absoluut onnoodzakelijk met een taal als PHP.

Voldoende antwoord ?

  • troxx
  • Registratie: Mei 2001
  • Laatst online: 13-01-2020

troxx

Vechain maximalist

Ligt het aan mij of zit die class helemaal vol met rotzooi? Hoe kan je die spaces e.d. het makkelijkste eruit filteren

aka Crypto T


  • BierPul
  • Registratie: Juni 2001
  • Laatst online: 00:01

BierPul

2 koffie graag

search & replace :?

Ja man

Pagina: 1