mail class

Door Ruud Verbij, 15 jaar geleden, 3.230x bekeken

Klasse om mails te versturen op een zeer gemakkelijke manier. Ook bestaat de mogelijkheid om mails op te slaan en daarna weer te openen en te wijzigen.

Gesponsorde koppelingen

PHP script bestanden

  1. mail-class

 

Er zijn 16 reacties op 'Mail class'

PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Jan Koehoorn
Jan Koehoorn
15 jaar geleden
 
0 +1 -0 -1
PHPmailer bestaat al een aantal jaar. Het lijkt me sterk dat deze iets toevoegt.
Marien xD
Marien xD
15 jaar geleden
 
0 +1 -0 -1
Ik zou je email adres niet zo weergeven. Doe dan een fake of een verbouwde
Ricardo Cino
Ricardo Cino
15 jaar geleden
 
0 +1 -0 -1
Vraagje , Wat is het nut van een mail clas? mail() werkt toch ook goed :')
Steff   an
Steff an
15 jaar geleden
 
0 +1 -0 -1
@Jan
Stop dan maar gauw met je 'hobby' volgens mij vinden vele het wiel nog eens uit met hun ge-script. Jij weet zelf toch ook wel dat zelf maken veel leuker is?
Nick Mulder
Nick Mulder
15 jaar geleden
 
0 +1 -0 -1
Of je kan zelf een creatief script maken, en dan het wiel zelf uitvinden...
Arian Stolwijk
Arian Stolwijk
15 jaar geleden
 
0 +1 -0 -1
Ik vind het er netjes uit zien hoor...
En waarom niet een keer iets anders gebruiken?
Joeri
Joeri
15 jaar geleden
 
0 +1 -0 -1
Ziet er netjes uit en idd php mailer bestaat reeds jaren maar zoals hierboven vermeld blijft het steeds leuk je eigen ding te doen.

Grtz.
Lissy Pixel
Lissy Pixel
15 jaar geleden
 
0 +1 -0 -1
DANK je wel voor het delen en ik heb dus nog niet met classes gewerkt dus kan je me uitleggen hoe dit te gebruiken?
BEDANKT als je dit wil...
Ruud Verbij
Ruud Verbij
15 jaar geleden
 
0 +1 -0 -1
lissy; ik raad je aan om je eerst een beetje te verdiepen in het reilen en zeilen van object geörienteerd programmeren (evt in php).
om even kort te vertellen wat je moet doen om een mailtje te verzenden:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
$mail = new mailer();  // eerst maak je een nieuw object aan; gewoon doen
$mail->addReceiver("rverbij@gmail.com"); // via onderstaan functies kan je je mailtje samenstellen (spreekt redelijk voor zich)
$mail->setSender("rverbij@gmail.com","ruud");
$mail->setSubject("mailtjes test");
$mail->setMessage("Gewoon even om te testen\nOf omdat het leuk is!");

$mail->saveTotalEmail("blaat.txt"); // zo zou je je mailtje kunnen opslaan
$mail->openTotalEmail("blaat.txt"); // zo zou je je mailtje kunnen openen (mits $mail = new mailer(); vooraf is gegaan)

succes!
Rudie dirkx
rudie dirkx
15 jaar geleden
 
0 +1 -0 -1
@Steffan
In dit geval zou ik toch voor PHPMailer gaan. En er zijn heel veel kant-en-klaar scripts idd en die zo ik allemaal gebruiken, ipv zelf iets maken dat precies hetzelfde doet maar dan op een andere (slechtere?) manier.
Die packages bestaan omdat ze zo goed en handig zijn.

Er is echter nog heel veel in PHP wat niet gemaakt is. Niet packages, wel websites. Best wel custom, die websites.

Daarnaast, een gastenboek zelf maken is leuk, of zelfs een forum, maar zo'n package (bijna elke opzichzelfstaande class) kan je beter downloaden.
Steff   an
Steff an
15 jaar geleden
 
0 +1 -0 -1
Als wel zo gaan beginnen..

Gastenboek bestaat al
Forum bestaat al
CMS bestaat al
Email Class bestaat al
......
Volgens mij kan de halve 'script library' dan wel weg.
Maar misschien is het ook leuk om het toch zelf te maken, je leert er altijd van.

Ik begrijp je idee wel, maar zelf gemaakte classes toevoegen kan toch geen kwaad.
Tomas
tomas
15 jaar geleden
 
0 +1 -0 -1
@steffan
En HTML mailer?
Mark moes
mark moes
13 jaar geleden
 
0 +1 -0 -1
T is wel is waar een beetje laat na het posten van dit script, maar toch even een reactie. Ik hoop dat er nog gereageerd word...

Is het ook onderdeel van OOP dat je de functies setMessage() en getMessage() gebruikt? tenminste, ik wil zeggen, in de ene 'set' je m, en de andere return je m... Kun je dat niet net zo goed in 1 functie stoppen??

Verder heb ik nog een paar kleine foutjes ontdekt volgens mij...

verander regel 268-272 in dit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
         switch($this->type) {
             case
"plain" : $this->type = TEXT; break;
             case
"html"  : $this->type = HTML; break;
             default      :
$this->type = TEXT;
         }

?>

$type wordt niet goed aangeroepen, dus dit zal in een foutmelding resulteren.

Overigens krijg ik nog steeds een melding dat regel 271 niet klopt, dus default : $this->type = TEXT; geeft een foutmelding. Hoe komt dat? Ik kan t nog niet vinden.

Verder mooi script, voor beginners in OOP, zoals ik, is hier veel aan te leren...
Arian Stolwijk
Arian Stolwijk
13 jaar geleden
 
0 +1 -0 -1
Die switch moet natuurlijk dit zijn:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php

         switch($this->type) {
             case
"plain" : $this->type = self::TEXT; break;
             case
"html"  : $this->type = self::HTML; break;
             default      :
$this->type = self::TEXT;
         }


?>


De get en setMessage zou ik niet in één method stoppen. Het zijn immers twee verschillende dingen, dus dan ga je dat niet in één ding proppen met bijvoorbeeld een if, dat wordt onduidelijk.


13 jaar geleden
 
0 +1 -0 -1
De class op zich ziet er netjes uit, ook je commentaar is netjes opgebouwd. Buiten het feit dat er tientallen van dit soort classes op het web te vinden zijn, met ieder voor ze zeggen nog meer rotzooi wat je waarschijnlijk nooit gebruikt.

Vind alleen de werking van je class onlogisch. Als je de class aanroept ga je er van uit dat iemand een mail wil verzenden. Dat lijkt me logisch, vervolgens maak je met je construct een header aan. Waarom zou je dit willen? Misschien wordt het script om bepaalde voorwaarde wel niet verzonden, je hebt hier nu wel geheugen voor gereserveerd. Gaat om enkele bytes dan, maar het gaat om het principe.

Je gebruikt veel Set en Add funties, waarom controleer je niet op het type wat je binnen krijgt (string, int, array etc)?

Als laatste puntje maak je geen gebruik van try en catch blokken, voor de fouten afhandeling. Dit zou mij persoonlijk storen tijdens het uitbreiden van een class of het maken van een afgeleide class, als ik geen exceptions kan gebruiken. Om die reden vind het dus niet terecht dat je bij Niveau Gevorderd aangeeft.

Je zou bij je member variabelen ook nog commentaar kunnen weergeven hier heb je @var voor. Verder nette class begint al ergens op te lijken.
PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Mark moes
mark moes
13 jaar geleden
 
0 +1 -0 -1
@Arjan:
Ja, bedankt, die was ik nog vergeten, nou werkt t bij mij ook weer fatsoenlijk. Ik had m even over het hoofd gezien.

@Pascal:
t is niet mijn script, maar ik ben wel benieuwd naar wat je precies in gedachten had. Het controleren van de Set en Add functies gebeurt toch wel? Volgens mij gebeurt dat eigenlijk al voor dat de Set functie wordt gebruikt.

Wat is overigens het voordeel van die try en catch blokken, het is toch gewoon een vervanger voor if-else? Of is try-catch meer OOP gericht?

Om te reageren heb je een account nodig en je moet ingelogd zijn.

Inhoudsopgave

  1. mail-class

Labels

  • Geen tags toegevoegd.

Navigatie

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.