mails versturen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Back-end Developer

Functieomschrijving Voor een erkende werkgever in de regio van Middelburg zijn wij op zoek naar een enthousiaste PHP / Symfony Developer. Een ambitieus persoon die het gemotiveerde development team komt versterken met het realiseren van nieuwe en complexe projecten. Ben jij op zoek naar een baan met veel uitdaging binnen een snelgroeiend e-commerce bedrijf, waar je de tijd en ruimte krijgt voor professionele groei? Dit ga je doen: Je bent verantwoordelijk voor de beheer en ontwikkeling van de serviceportal in Symfony en de webshops in de tweede versie van Magento; Je houdt je bezig met het ontwikkelen van nieuwe functionaliteiten;

Bekijk vacature »

Database Developer

Functieomschrijving Wat ga je doen? Als developer ben jij samen met een gemotiveerd team van 10 collega’s verantwoordelijk voor het creëren van aangemeten software voor klanten. Je bent klantvriendelijk en oplossingsgericht ingesteld, omdat het essentieel is om de klanten zo goed mogelijk te helpen met hun uitdagingen. Het is mogelijk om vanuit huis je werkzaamheden uit te voeren, maar het is ook prettig als je in de omgeving van Tilburg woont om naar het kantoor te kunnen komen. Vind jij het leuk om jouw creatieve vaardigheden te benutten om complexe systemen te ontwikkelen? Lees dan snel verder! Bedrijfsprofiel Voor wie

Bekijk vacature »

Android developer

De functie Schiphol is een plek om te reizen, te verblijven en te werken. Door middel van data en technologie richten we op al deze gebieden het leef- en werkklimaat optimaal in en zorgen we voor een slimmere en efficiëntere operatie. Wij ontwikkelen nieuwe producten en diensten vanuit de wensen en behoeften van onze klanten, voorspellen passagier flows en testen digitale oplossingen om rijen en andere pijnpunten in het proces te verminderen. Met slimme feedback van sensortechnologie maken we zelfs data van toiletten en stoelen inzichtelijk en bruikbaar. Het Commercial Platform bestaat uit multidisciplinaire teams met een end-2-end verantwoordelijkheid voor

Bekijk vacature »

Starter/junior PHP developer

Functie Momenteel zijn ze op zoek naar een junior PHP developer om het team te versterken. Als back-end developer bouw je de enterprise software die hun bedrijf helpt bij haar primaire processen. Afhankelijk van de omvang van het project werk je in een klein team aan een project. Ze hebben dagelijkse stand-ups en elke twee weken een scrumsessie, begeleid door de Scrum Master, waar je je ideeën kunt presenteren en samen met de Product Owner kunt werken aan het beste product. Ze vertrouwen enorm op hun eigen bedrijfssoftware. Dit geeft hun een groot voordeel ten opzichte van hun concurrentie. Zo

Bekijk vacature »

Software Ontwikkelaar

Java/Kotlin Developer Ben jij een ervaren Java/Kotlin developer met een passie voor het automatiseren van bedrijfsprocessen? Wil je graag deelnemen aan uitdagende projecten bij aansprekende klanten? En ben je op zoek naar een professioneel, ambitieus en dynamisch bedrijf om je carrière verder te ontwikkelen? Kom dan ons team bij Ritense in Amsterdam versterken! Zo ziet de functie eruit: Als Java/Kotlin developer bij Ritense ben je verantwoordelijk voor de ontwikkeling en implementatie van applicaties die bedrijfsprocessen automatiseren, zodat onze klanten slimmer, efficiënter en klantgerichter kunnen werken. Als developer ben je in de lead en zorg je voor de correcte oplevering van

Bekijk vacature »

Lead developer

Functie Als lead developer wordt jij verantwoordelijk voor een van onze development teams. Samen met de Software Architect bewaak jij de kwaliteit en uitvoering van onze complexe vraagstukken. Daarnaast ben jij verantwoordelijk voor het inschatten, designen en ontwikkelen van middelgrote tot grote veranderingen in de software. Ook coördineer jij het proces rondom complexe technische vraagstukken. Verder bestaat jouw takenpakket uit het volgende: – Het aansturen van jouw development team; – Het begeleiden van Junior Software Engineers; – Het maken van technische analyses m.b.t. nieuwe aanvragen en het tijdsbestek inschatten voor de uitvoering hiervan; – Het uitvoeren van de ontwikkeling van

Bekijk vacature »

.NET developer

Functie Als .NET ontwikkelaar ga jij aan de slag bij een van onze klanten actief in de High Tech Industrie. Onze klanten zijn voornamelijk gelokaliseerd in de omgeving van Eindhoven. Wij zijn erg selectief als het gaat om de projecten die wij accepteren en richten ons dan ook alleen op innovatieve en complexe projecten. Omdat onze klanten voornamelijk gespecialiseerd zijn in de machinebouw, werk jij ook vaak dicht tegen de machines aan. Ons team bestaat momenteel uit Embedded engineers, IOT developers en Cloud engineers. Wij werken voornamelijk aan Microsoft projecten waar er gebruik wordt gemaakt van WPF, UWP, .NET Core

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

Medior/senior Back-end developer gezocht!

Functie Vanwege de groei binnen het bedrijf zijn we op zoek naar versterking in het devlopmenttean. Als back-end developer bouw je aan de bedrijfssoftware die ons helpt bij de primaire processen. Een leuk (intern) project dus waarbij je de software continu doorontwikkeld! Je werkt in een klein team, we hebben dagelijks stand-ups en iedere twee weken een scrum-sessie, begeleid door onze Scrum Master. Hierin krijg je uitgebreid de kans om je ideeën te presenteren, en te overleggen met je mede-ontwikkelaars en de Product Owner. Binnen de ontwikkelteams gebruiken we Trello, Gitlab, Jiira, Confluence en Boockstack. Hiernaast werken ze met de

Bekijk vacature »

Senior developer (PHP en VB.NET)

Functie De development afdeling bestaat uit 2 teams. Het productteam (10 developers) is verantwoordelijk voor verschillende applicaties met als doel om zoveel mogelijk te automatiseren en uit te werken tot standaard software. Met diverse Solutions Architecten en ervaren developers denken ze voortdurend mee met hun klanten en bouwen ze de basis van het uiteindelijke maatwerk dat wordt geleverd. Hiernaast hebben ze een maatwerk/projectteam. Dit team bestaat momenteel uit 8 developers (junior tot senior) en is verantwoordelijk voor het maatwerk in hun klantprojecten. Momenteel zijn ze op zoek naar een senior developer die aan de slag gaat in het productteam. Hierin

Bekijk vacature »

Python Developer

Dit ga je doen Als Python Developer ben je verantwoordelijk voor: Het ontwikkelen van Stuurprogramma's in Python zodat er verbindingen kunnen worden gelegd tussen besturingssystemen en (AV) hardware; Het testen en debuggen van Stuurprorgamma's; Het communiceren met noodzakelijke partijen in gevallen waar extra technische details nodig zijn om een Stuurprogramma te ontwikkelen of problemen op te lossen; Het maken van de nodige technische documentatie (in het Engels); Het participeren in een Scrum/Agile omgeving. Hier ga je werken Deze internationale organisatie is wereldwijd een succesvol producent en leverancier van professionele AV hard- en software. Klanten gebruiken de producten o.a. voor het

Bekijk vacature »

Junior Software Developer

Functie omschrijving Wij zijn op zoek naar een Junior Software Developer!? Sta jij aan het begin van jouw loopbaan of heb jij misschien al enige ervaring? Vind jij het daarnaast belangrijk om jezelf constant te kunnen ontwikkelen en uitdagen? Lees dan snel verder! Voor een vooraanstaand softwarehuis in Nieuwegein ben ik op zoek naar een Junior Software Developer. De eigenaar van het bedrijf is ervan bewust dat je als junior nog een hoop kan leren, waardoor je de eerste maanden veel begeleiding en diverse trainingen krijgt. Daarna ga je samen met je collega's aan zowel kleine als grote projecten werken.

Bekijk vacature »

API Developer Red Hat Fuse

Dit ga je doen Als API Developer zal je verantwoordelijk zijn voor het: het maken van API's en het correct laten draaien van de API's op het platform. Hierdoor kom je in aanraking met Red Hat Fuse, Springt Boot, 3Scale, Red Hat SSO, Openshift en Azure DevOps; zorgen voor de kwaliteit van de ontwikkeling, integratie en prestaties van de API's; zorgen voor een stabiel integratieplatform. Hier ga je werken Deze organisatie is een toonaangevende speler in de vastgoedbranche en telt momenteel ruim 500 medewerkers. Met meer dan 150 applicaties staat er een complex applicatielandschap dat hoofdzakelijk op OpenShift, Azure en

Bekijk vacature »

High level C++ QT Developer

Vacature details Vakgebied: Software/IT Opleiding: Senior Werklocatie: Eindhoven Vacature ID: 13486 Introductie Would you like to be involved in every aspect of software development for our exceptional products, from specification and design to testing and integration? If you're passionate about software development and eager to apply your programming skills to create customer-focused deliverables, then this is the perfect chance for you to expand your expertise. You can become a member of our Machine Control department's data-driven development team, where you'll design and build software solutions that optimize machine productivity. As a senior software design engineer, you'll participate in all phases

Bekijk vacature »

Medior/senior Python developer

Functie Bedrijven komen bij deze organisatie om technische vraagstukken op te lossen en hierin ook tot oplossingen te komen waar ze zelf misschien niet aan gedacht hadden. Jij gaat vanuit je ervaring dus niet alleen hands-on aan de slag met het ontwikkelen, maar zult ook zeker adviseren en proactief meedenken met de klant. Er zijn meerdere lange en/of korte projecten en het type klanten is heel uiteenlopend. Zo kun je terecht komen in een multidisciplinair scrumteam waarin je als Python developer meewerkt, of juist voor een kleiner (Greenfield) project aan de slag gaan waarin je veel breder bezig bent. Door

Bekijk vacature »
Nick Vledder

Nick Vledder

02/12/2017 19:37:53
Quote Anchor link
Er is al het nodige over geschreven op dit forum, maar tijdens mijn zoektocht kwam ik hierover nog niets tegen. Ik verstuur periodiek e-mails met een unieke url. Ik gebruik hiervoor Swift Mailer, een prima bibliotheek (imho). Zelf ben ik niet zo blij met de mogelijkheden van 'text/plain' waar het gaat om het tonen van de URL. Dan biedt 'text/html' meer mogelijkheden. 'Best practice' is wellicht om op beide manieren in één bericht te sturen (dat kan met Swift Mailer) en het mailprogramma van de ontvanger (bijv Outlook, Gmail, tc.) de afhandeling te laten doen. Hoe zorg ik ervoor dat de URL in 'text/plain' ook netjes zichtbaar wordt in het email-bericht? Wat zijn jullie ervaringen?
Gewijzigd op 02/12/2017 20:23:03 door Nick Vledder
 
PHP hulp

PHP hulp

28/03/2024 11:27:11
 
Ben van Velzen

Ben van Velzen

02/12/2017 21:30:20
Quote Anchor link
In een text/plain mail zul je de URL gewoon moeten noemen in de body. De enige manier om die URL netjes te krijgen is door deze netjes te maken met rewrites.
 
Rob Doemaarwat

Rob Doemaarwat

02/12/2017 22:25:34
Quote Anchor link
Zelf gebruik ik het volgende om van een "html" mail een "plain" versie te maken (even geknipt uit een iets grotere mailwrapper class, dus dat moet je d'r even bij verzinnen):

//zonder code tags, want die braken allemaal over de regex ...
public $markup = ['b' => '*','i' => '/','u' => '_'];

public static function stripQuotes($str,$quotes = ["'",'"']){
return in_array($quote = substr($str,0,1),$quotes) && (substr($str,-1) == $quote) ? substr($str,1,-1) : $str;
}

public function stripTags($body){
foreach($this->markup as $tag => $char) $body = preg_replace("/(<$tag.*?>|<\\/$tag>)/",$char,$body);
if(preg_match_all('/<a.*?href\s*=\s*([^\s>]+).*?>(.*?)<\\/a>/',$body,$matches,PREG_SET_ORDER))
foreach($matches as list($full,$link,$descr)){
$link = self::stripQuotes($link);
$body = str_replace($full,$descr . ($link == $descr ? '' : " ($link)"),$body);
}
return strip_tags($body);
}


Bij een link (<a href=[link]>[descr]</a>) wordt de [link] dan dus tussen haakjes achter de [descr] gezet (indien niet gelijk aan elkaar).

Tevens worden <b>, <i>, en <u> omgezet naar resp. *...*, /.../. en _..._. Daarna trekt een strip_tags() alle overige markup d'r uit.

Met SwiftMailer wordt het dan:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
    $message = new \Swift_Message();
    //...
    $message->setTo($to);
    if($subject) $message->setSubject($subject);
    if($body){
      if($html) $message->setBody($body,'text/html')->addPart($this->stripTags($body),'text/plain');
      else $message->setBody($body);
    }
    return $message;
Gewijzigd op 02/12/2017 22:37:28 door Rob Doemaarwat
 
Ben van Velzen

Ben van Velzen

02/12/2017 22:47:40
Quote Anchor link
Ik gooi het zelf gewoon door een tekst browser print only mode. Dan blijft je markup behouden inclusief tabellen, het enige dat je dan krijgt is bijvoorbeeld iets als "klik hier (http://www.example.org/linkje)"
 
Rob Doemaarwat

Rob Doemaarwat

02/12/2017 22:55:40
Quote Anchor link
@Ben: "gooi het [...] door een tekst browser print only mode": is dat iets wat je via PHP/command line aanroept, of doe je dat handmatig?
 
Thomas van den Heuvel

Thomas van den Heuvel

03/12/2017 01:38:38
Quote Anchor link
Workaround: stuur het naar een soort van verkorte / tiny-URL (specifiek bedoeld voor links vanuit e-mailverkeer) die je binnen de site doorverwijst. Bijkomend voordeel van iedereen door hetzelfde poortje sturen: kun je ook meteen functionaliteit inbouwen die bijhoudt hoe vaak mensen op dat soort links klinken.
 
Ben van Velzen

Ben van Velzen

03/12/2017 11:45:46
Quote Anchor link
Rob dat gaat gewoon via exec binnen PHP. Werkt prima.
 
Nick Vledder

Nick Vledder

04/12/2017 09:45:41
Quote Anchor link
@Allen Bedankt voor de antwoorden. Voor de huidige URL maak ik al wel gebruik van rewrite (format URL: controller/action/id) in .htaccess. Desalniettemin is de optie van een tiny-URL wel 'nice to have' in de toekomst. Ik ga aan de slag met het advies van Rob en zal de resultaten bekijken in verschillende mailprogramma's. Resultaten zal ik posten in dit topic...

Toevoeging op 04/12/2017 14:43:17:

... korte samenvatting. Heb verschillende mailprogramma's een email gestuurd (SMTP mbv SwiftMailer). Zowel Hotmail als Gmail tonen de geschreven tekst en de url netjes. Zowel in 'text/html' als 'text/plain' gaan goed.

In SwiftMailer maakt het niet de volgorde niet uit:
$message->setBody($this->plainbody, 'text/plain')->addPart($this->htmlbody, 'text/html');

of
$message->setBody($this->htmlbody, 'text/html')->addPart($this->plainbody, 'text/plain');

SquirrelMail heeft een voorkeur voor 'text/plain', maar biedt vervolgens wel de mogelijkheid ook in html de html-versie te openen (dit gaat ook goed). Stuur je echter enkel de 'text/html'-versie dan gaat het mis bij de anchor-tag. Dit is alleen te ondervangen door de url ook in de omschrijving van de anchor-tag op te nemen. Vbd <a href="$url">$url</a>.
 



Overzicht Reageren

 
 

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.