v5.dk logo
Kom ind og besøg vores Discord Chat-community
Bliv medlem her eller læs mere om Discord her
Få adgang til alt på hele v5.dk
- bliv Premium-medlem for kun 39,95 kr.

Mere info Køb nu

Premium på v5.dk
v5.dk logo  v5.dk e-learning
Log på med Facebook
  • Log ind på v5.dk
  • Opret bruger
  • Log ind
  • v5.dk Premium
  • v5.dk Premium
  • Hvad siger vores kunder?
  • E-læring for begyndere
  • icon for WordPress 4 e-learning WordPress 4
  • icon for Office 365 e-learning Office 365
  • icon for Microsoft Word e-learning Microsoft Word
  • Bloggen for alle
  • E-læring for nørder
  • icon for PHP-programmering e-learning PHP-programmering
  • icon for iOS Programmering e-learning iOS Programmering
  • icon for Linux Server e-learning Linux Server
  • Bloggen for nørder
  • Arkiverede videoer
  • Fællesskab
  • Forum
  • Idéer og ønsker
  • Markedspladsen
  • v5.dk Premium
  • Gratis webhotel
  • Cloud-servere
  • Om v5.dk
  • Søg på v5.dk
  • Om v5.dk ApS
    • Om virksomheden
    • RSS-feeds og tjenester
    • Driftsmeddelelser
    • Presse-kit
    • Ledige jobs
    • Social Netværk
      • Facebook
      • Twitter
      • Instagram
    • Alt det andet
      • Forretningsbetingelser
      • Ophavsret og Copyright
  • Kontakt kundeservice
  • FAQ og Hjælp
    • Premium og abb.
    • Videoer og Afspiller
    • Forum og Points
    • Cloud-servers
  • Partner/Virksomhed
  • Partner-kanal
v5.dk logo mobile
  • Menu
  • Opret bruger

Send e-mail med PHP igennem Mailgun
I denne video skal vi kigge på hvordan vi kan opsætte Mailgun (eller Mandrill, SendGrid mv.) til afsendelse af e-mails med PHP

Send e-mail med PHP igennem Mailgun
  1. v5.dk
  2. e-learning for nørder
  3. PHP-programmering
  4. PHP Tips og Tricks
  5. Send e-mail med PHP igennem Mailgun

Bliv medlem og se videoen
Problemer med afspilning?

Tweet
Næste afsnit Tilbage til emnet
Profile picture
Hej gæst få adgang til denne video: Opret bruger eller log på via Facebook
  • #PHP
  • #PHP 7
  • #Composer
  • #Open Source

Send e-mails med PHP igennem Mailgun

Opdatering: Mailgun 2.0 er frigivet, læs her!

For nyligt er Mailgun PHP-library version 2.0 frigivet. Dette har ændret en lille ting i installationen, der gør vi skal installere en ekstra pakke via Composer.

Download kildekoden:

Tip: I menuen til højre kan du downloade hele projektet (Mailgun 2.0). Husk at rette $apikey og $domain værdierne i testmail.php-filen til dine egne data fra dit Mailgun.com kontrolpanel!

Der er i version 2.0 af Mailgun kommet en lille ændring. Vi skal nu via Composer installere en HTTP-connector. Det er heldigvis meget simpelt! En opdateret guide følger her:

Mailgun 2.0 benytter nu en teknologi som hedder Httplug. Httplug understøtter en række forskellige HTTP-connectors bl.a. Guzzle, Mock, Buzz, cURL, Socket mv. og modsat tidligere, skal vi nu selv vælge hvilken af ovenstående vi ønsker at benytte. Det er heldigvis meget nemt, og kræver kun ét ekstra lille trin i installationen.

Installationen af Mailgun er det samme, det eneste nye (som er vist i punkt 4 herunder) er vi også via Composer skal installere Guzzle6.

Her er alle steps fra start til slut, som også vist i videoen (+ det nye step 4) der skal til for at sende e-mails med MailGun:

1. Lav en projektmappe og hop ind i den

$ mkdir ~/Desktop/v5-Mailgun && cd ~/Desktop/v5-Mailgun

2. Tjek at du har nyeste version af Composer (har du ikke allerede installeret composer, viser vi hvordan i videoen)

$ composer self-update

Updating to version 5c9c9102400dc4e38b8ea91074f22c7014050159.
    Downloading: 100%

3. Installer Mailgun 2.0 library

$ composer require mailgun/mailgun-php:~2.0

4. I version 2.0 af Mailgun PHP-lib. skal vi nu manuel installere en http-connector:

$ composer require php-http/guzzle6-adapter:^1.0

5. Så er vi klar til at sende en e-mail.
Du kan nu bruge denne "testmail.php"-kode til at sende en e-mail.

<?php

# Vis fejl-beskeder (ændre til off for at skjule fejlbeskeder)
ini_set( "display_errors", "on" );

# Hent Composer Autoloader
require 'vendor/autoload.php';

# Brug Mailgun Library fra Composer
use Mailgun\Mailgun;

# Angiv din API-key og domæne fra Mailgun her:
$apikey = 'key-xxx';
$domain = "sandbox-xxx.mailgun.org";

# Initialiser klienten og HTTP-connectoren
$client = new \Http\Adapter\Guzzle6\Client();
$mailgun = new \Mailgun\Mailgun($apikey, $client);

# Send en e-mail
$Status = $mailgun->sendMessage($domain, array(
    'from'    => 'Excited User <[email protected]'.$domain.'>',
    'to'      => 'Modtager <[email protected]>',
    'subject' => 'Test-mail',
    'text'    => 'Kære rare modtager. Dette er en [testmail]. Med venlige hilsner, hele v5.dk teamet.'
));

Tip: Følg videoen herover for trin-for-trin vejledning i hvordan du gennemfører ovenstående 4 punkter.

Gør-det-selv e-mails

Det med at sende mails fra egen server, var noget alle gjorde. blot nogle år tilbage, men i dag er det en større jungle, end det burde være, at få en e-mail fra A til B, hvis men selv skal stå for leverancen med egen server.

Der er så mange elementer og teknologier man skal have styr på, for at være nogenlunde sikker på at ens e-mail ikke lander i modtagerens SPAM-filter. 

Ydermere blokerer de fleste Internet-udbydere som standard for afsendelse af e-mails, fordi det ofte har været misbrugt til masseudsendelse af SPAM. Hvis en computer bliver inficeret med Malware eller Virus, er der stor chance for at denne bliver misbrugt til masseudsendelse af spam, og det er netop årsagen til at TDC, Stofa, Telenor, Waoo, Fullrate mv. automatisk blokerer for udsendelse af e-mails på sin Internetforbindelse.

3. parts e-mail tjeneste

Jeg plejer derfor at anbefale folk at brug en 3. parts e-mail tjeneste som f.eks. Mailgun.com - der tillader at sende op til 10.000 e-mails pr. måned, helt gratis.

Her på v5.dk benytter vi Mandrill.com. Mandrill minder meget om Mailgun, men kan nogle flere ting, omvendt så koster Mandrill også ca. 70 kr. om måneden hvor Mailgun er gratis (op til 10.000 e-mails pr. måned).

Her er nogle af de forskellige e-mail udbydere. I videoen her gennemgår vi opsætningen af Mailgun.com, men konceptet er det samme for de andre tjenester her:

  • Mailgun.com fra Rackspace (den vi bruger i videoen her)
  • SendGrid.com
  • Mandrill.com fra Mailchimp
  • Postmarkapp.com
  • Mailjet.com

Mailgun

Mailgun har i skrivende stund en gratis pakke (gratis for altid) der tillader at sende op til 10.000 e-mails pr. måned uden det koster noget. Sender du mere end 10.000 e-mails pr. måned, koster det få kr. ekstra.

Mailgun.com udemærker sig specialt ved at være utrolig simpel, der er ikke tusindevis af indstillinger man skal igennem for at komme igang. Man opretter blot en bruger, og så er man igang med et "test"-domæne (sandboxdomain) og kan sende e-mails.

Dette vil jeg gennemgå i denne video.

Composer

I denne video skal vi også stifte bekendtskab med noget helt nyt, nemlig Composer. Composer er en slags App Store til PHP. Teknisk korrekt er Composer det man kalder et værktøj for dependency management i PHP, men sagt på godt dansk; En App Store til PHP.

Det betyder helt kort fortalt at vi med Composer kan installere Mailgun ind i på vores webhotel.

Composer indeholder i skrivende stund mere end 80.000 pakker/apps som vi kan installere, og udover Mailgun som vi installerer i denne video, har store firmaer som Facebook og Google også lavet pakker på Composer, så vi nemt kan integrere f.eks. Facebook i vores PHP-kode. Der findes også pakker til at arbejde med datoer og tid, valuta - ja selv GIF-animation.

Installation af Composer

Det er heldigvis rigtig nemt at installere Composer. Jeg viser også dette i videoen.

På Mac køres denne kommando i den mappe hvor vores webhotel ligger (vi viser i videoen hvordan man gør, trin-for-trin)

curl -sS https://getcomposer.org/installer | php

Og på Windows er der lavet en .exe-fil som man installerer.

Herefter kan man nu meget simpelt installere de apps man ønsker, ind i sin PHP-kode.

Alt dette med Composer fra start til slut, viser vi naturligvis også i videoen.

Mere viden om Composer? Der har i vores forum været nogle spørgsmål omkring Composer, der er kommet nogle uddybende svar til dette emne som du kan læse her. Har du selv spørgsmål, kan du altid oprette dem i vores forum. 

 

Forum-emner om PHP-programmering

Emne Svar Løst
Avatar for thomasnielsenÆØÅ
PHP-programmering | @thomasnielsen
315
Avatar for martinwichmandLoop Nested JSON Array til Table
PHP-programmering | @martinwichmand
05
Avatar for henrikhansen1Knap
PHP-programmering | @henrikhansen1
130
Avatar for ronnyboysenIndsæt data fra mySQL i formmail
PHP-programmering | @ronnyboysen
4
Avatar for dennischristensenHjælp til PHP Mysql
PHP-programmering | @dennischristensen
1
Avatar for larsmottBrug af mamp på egen mac i stedet for "garagen" i afsnit 3
PHP-programmering | @larsmott
030
Avatar for mortenorlaport til mysql i denne kode `?
PHP-programmering | @mortenorla
210
Avatar for yogibearIf / else
PHP-programmering | @yogibear
130

Download materialer

Du skal være Premium før du kan downloade materialer til denne video!

Lektion status



Denne lektion kræver Premium!
Læs mere her

Dine personlige noter til denne lektion

Denne funktion er kun tilgængelig for Premium-medlemmer. Læs mere her

Episode
Send e-mail med PHP igennem Mailgun
Composer - Installation på Windows
Composer - Installation på Mac OS X
Composer - Sådan virker det (Windows og Mac)
Kryptering af data i PHP
Har du et spørgsmål om PHP-programmering?

Få svar på dine spørgsmål om f.eks. PHP-programmering eller andre IT- og teknologi relaterede emner. Vores forum er gratis, og giver dig mulighed for at oprette og svare spørgsmål.

Nyt spørgsmål Gå til forum
v5.dk

Du kan også følge os på Twitter og Instagram

Bygget med af v5.dk
© Copyright 2006-2023 • Forretningsbetingelser • Copyright • Persondata- og Cookiepolitik
v5.dk ApS - Åbogade 15 - 8200 Aarhus N - CVR: 36902833
v5.dk logo
Hej, vi hedder v5.dk og vi laver e-learning på dansk

v5.dk er sat i verden for at gøre teknologi tilgængeligt og anvendeligt for både professionelle og almindelige brugere på alle niveauer.

93 200 555
  Skriv til os
v5.dk bruger cookies til at huske dine indstillinger, livechat samt til statistik
 

Alle vores priser er inkl. moms Sikker SSL-beskyttet forbindelse

Dankort og Visa-Dankort  Visa  Mastercard og Mastercard Junior  Maestro

  • Produkter
  • v5.dk Premium
  • Cloud-servers
  • v5.dk
  • Om v5.dk
  • Kunderne siger
  • Kontakt os
  • Presse
  • Stay updated
  • RSS & tjenester
  • Søg på v5.dk
  • Sitemap