contactmail versturen mbv phpMailer

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior Java Developer vacature

Jij volgt ontwikkelingen op de voet. Sterker nog: jij bent er onderdeel van. Jij loopt voorop. Jij denkt met klanten mee en helpt hen innoveren. Zo kun jij een bijdrage leveren aan de Rabobank-app, de beveiliging van treinen voor Pro-rail verbeteren of de website van ING een boost geven. Vergaderen? Liever gewoon zorgen dat het werkt! Hoe omschrijft men een Sogetist? Gedreven, resultaatgericht en niet snel tevreden. Wat niet wil zeggen dat je nooit met hem of haar kunt lachen. Integendeel. Plezier hoort wat ons betreft net zo goed bij werken. Maar we gaan op de eerste plaats voor de

Bekijk vacature »

Masterclass Data engineering

Data Talent Program: Data Engineer - start 1 april 2020 Plaats: Rotterdam, Zuid-Holland, Nederland Position ID: J1219-1154 Type dienstverband:Full Time Is het werken met veel verschillende databronnen en systemen jouw ding? Vind je het leuk al die data toegankelijk en bruikbaar te maken om innovatieve, advancedanalytics projecten te kunnen uitvoeren voor heel veel verschillende soorten klanten waar CGI voor werkt? Dan ben jij ongetwijfeld het nieuwsgierige data-talent dat wij graag verwelkomen in ons Emerging Technologies team. Wat ga je doen? Op 1 april a.s. starten we in samenwerking met het Havenbedrijf Rotterdam het Data Talent Development Program voor data experts.

Bekijk vacature »

Full Stack Java Developer / Maven / Spring /Amster

Functieomschrijving Ben jij een Full Stack Java Developer die in het mooie Amsterdam wil werken, voor een bedrijf dat verantwoordelijk is voor verschillende soorten data en applicaties? Solliciteer dan nu! Ontwikkelen, uitbouwen en verbeteren van applicaties in Java 8; Sparren met de business en jouw SCRUM team aangaande functionaliteiten. Functie-eisen Je bent in het bezit van minimaal een MBO-diploma met HBO werk- en denk niveau; Je hebt ervaring met Java (8); Je hebt ervaring met Maven; Je hebt ervaring met Spring Framework; Je hebt bent bekent met Azure (PaaS/IaaS); Je hebt ervaring met JFS, Angular; Je hebt kennis van Messaging

Bekijk vacature »

Full stack software .NET C# developer, domotica me

Voor een bedrijf in de regio Hendrik Ido Ambacht zijn we op zoek naar een fullstack .NET C#developer. Het gaat hier om een bedrijf dat systemen ontwikkeld die via domotica oplossing bieden voor maatschappelijke instellingen. Zo verwerken hun systemen meldingen waarover ze rapporteren, maar ook zorgen ze voor de automatisering van toezicht. Het systeem bestaat uit apps, web interfaces, backend en BI rapportage tools. Het gaat het hier om een MKB bedrijf van circa 70 mensen met een team van 5 developers. Bestaande uit hardware, embedded en backend developers. Momenteel is er daarom sterke behoefte aan iemand die zowel back-

Bekijk vacature »

.NET C# ontwikkelaar gezocht (C# Winforms, Xamarin

.NET C# ontwikkelaar bij een slagvaardig en hard groeiend bedrijf met korte lijnen? In een omgeving waar je onder andere direct samen met de oprichter werkt aan het verder ontwikkelen van een vernieuwend product? Dan is deze vacature zeker iets voor jou. Voor een bedrijf in Rotterdam zijn we momenteel op zoek naar een .NET C# ontwikkelaar. Het gaat om klein bedrijf dat op een punt is aanbeland waar de vraag naar hun software flink aan het toenemen is. Hierdoor zijn ze op zoek naar meerdere .NET ontwikkelaars die samen met de oprichter en nog verschillende andere collega’s hun software

Bekijk vacature »

allround software ontwikkelaar

Allround software ontwikkelaar. We zoeken een medior of senior allround software man/vrouw die klaar is om aan de leuke projecten aan te pakken die al klaar liggen voor je. De projecten zullen variëren van klein tot groot en is dus veel afwisseling. Voor ons is er geen dag hetzelfde als die van gisteren. Gisteren bouwde je nog een complexe applicatie, vandaag integreren we tussen systemen, morgen ben je een applicatie aan het schrijven. Wat ga jij doen? Je bent verantwoordelijk voor het hele proces, van de architectuur tot de database en de gebruiksvriendelijkheid van de systemen. We hebben een kleine

Bekijk vacature »

.NET Developer Medicatie / Apotheek

Jij krijgt een kick van het ontwikkelen van complexe software. Voor onze vestiging in Heerenveen zoeken wij een .NET Developer Medicatie / Apotheek die graag met de laatste Microsoft-tools en -technieken wil werken. Interessant? Lees snel verder! Jouw baan Je bent verantwoordelijk voor het ontwerpen, ontwikkelen, ondersteunen en onderhouden van de module Medicatie / Logistiek & Apotheek. Je gaat nauw samen werken met zowel de interne als externe klant om nieuwe functionaliteiten te ontwikkelen om onze klanten te ondersteunen in hun werkproces. Het gaat om complexe ICT-producten die feilloos moeten functioneren binnen de complexe omgeving van een zorgorganisatie. ChipSoft maakt

Bekijk vacature »

Java Developer / Domotica / Public Cloud / Verbete

Functieomschrijving Wil jij als Java Developer een bijdrage leveren aan het ontwikkelen van innovatie Java applicaties die het levensgeluk van patiënten in diverse zorginstellingen aanzienlijk verbeterd? Lees dan snel verder! Ontwikkelen van nieuwe applicaties in Public Cloud; Optimaliseren en verbeteren van bestaande applicaties in Private Cloud; Meedenken over verbeterprojecten; Maken en uitvoeren van Stress Testing; Ontwikkelen en verbeteren van de Mobile app. Functie-eisen Hbo werk- en denkniveau; Minimaal 5 jaar relevante werkervaring; Ervaring in Java 8; Kennis van Linux, Public- en Private Cloudtechnieken; Je bent communicatief erg sterk en kan tegen de nodige stress. Bedrijfsomschrijving Deze organisatie is al ruim

Bekijk vacature »

E-learningontwikkelaar

Wil jij meewerken aan de ontwikkeling van hoogwaardige leeroplossingen? En ben je in staat om jouw kennis over opleidingsmethodieken te vertalen naar trainingen? Dan is dit de perfecte uitdaging voor jou! Jouw baan Je belangrijkste taak is het ontwikkelen van e-learningmodules voor specifieke doelgroepen, het inhoudelijk meedenken over en ontwikkelen van creatieve, didactische concepten voor onze klanten. Ruim 90.000 ziekenhuismedewerkers zijn straks door jóuw producten beter in staat om hun patiënten te helpen. Jouw team Als e-learningontwikkelaar ben je onderdeel van een multidisciplinair team dat bestaat uit onderwijskundigen, e-learningontwikkelaars en technisch schrijvers. Binnen dit hechte team heeft ieder zijn eigen

Bekijk vacature »

Delphi Developer gezocht voor organisatie die Delp

Functieomschrijving Dankzij jouw software krijgen klanten meer inzicht in hun processen in kunnen deze processen bijvoorbeeld steeds verder geautomatiseerd worden. Je komt aan zeer uiteenlopende projecten te werken voor een grote diversiteit aan opdrachtgevers. Hierbij kun je bijvoorbeeld denken aan een applicatie die gebruikt wordt voor het plannen van werkzaamheden, maar bijvoorbeeld ook een website voor een klant. Één ding is zeker; Delphi is jouw kerntaak! Daarnaast werk je ook met SQL. Je opleidingsniveau is voor deze functie van ondergeschikt belang, het is belangrijk dat je ruime ervaring hebt op het gebied van Delphi. Samen met je collega's ben je

Bekijk vacature »

C# Developer with Cloud experience

C# Developer with Cloud experience (MSc. Computer Science, C#, MVVM, WPF, Azure AreaDelft) Intro Software Engineer C# Dotnet Research & Development Computer Science / C# / WPF / .NET / Object Oriented Programming / TTD / Azure / Clean Code programming / 3D Data Modeling / Delft Organisation Our client, an international company, is looking for a Software Developer with a great passion for technique. The company is a multinational with different offices throughout the world. The department you will be working for is specialized in developing and designing of software for their own equipment.The equipment contains mechanics, electronics, software,

Bekijk vacature »

.NET Developer / C# / Microservices / Azure

Functieomschrijving Ben jij een senior .NET Developer en wil jij een bijdrage leveren aan een gezondere wereld door innovatieve software te ontwikkelen? Wil jij werken met de nieuwste technieken zoals C#, Docker en Azure? Lees dan nu verder! Het ontwikkelen van software inclusief vormgeving, implementaties, integraties en testen; Het in kaart brengen van software requirements; Zorgen dat jouw code kwalitatief hoogstaand is; Uitvoeren van risico analyses; Bijdrage leveren aan het continuous quality improvement process. Functie-eisen Minimaal 3 jaar ervaring als .NET Developer; Je hebt ervaring met C#, Azure Devops of TFS; Je hebt ervaring met ASP.NET Core, MVC, Docker en

Bekijk vacature »

Python Developer

Locatie AMSTERDAM Functieomschrijving Voor een internationale bank in Amsterdam zoeken wij een Python Developer met interesse in Data Engineering. Waar kom je te werken? Je komt te werken binnen de afdeling Financial Risk. Binnen de bank is deze afdeling verantwoordelijk voor o.a. het voorspellen van risico’s bij het verstrekken van kredieten en het maken van rapportages voor toezichthouders zoals de DNB en de ECB. Op dit moment zitten zij in een enorme transitie fase waarbij er over wordt gegaan op een nieuw datamodel. Het team waar jij komt te werken helpt bij de inrichting van de nieuwe infrastructuur. Hoe ziet

Bekijk vacature »

Xamarin Developer

Functieomschrijving Ben jij de Xamarin expert die de volgende stap in zijn carrière wil zetten? Houd jij er van om veelgebruikte apps verder uit te bouwen terwijl je de kwaliteit blijft waarborgen en heb je daarnaast zelf innovatieve ideeën ? Lees dan snel verder! Samen met het gehele mobile app team ben jij verantwoordelijk voor: de (door)ontwikkeling van Native applicaties voor Android en iOS; het verder samenbrengen van de applicatie en de web omgeving; de innovatie van de applicatie, het is belangrijk dat jij zelf meedenkt en jouw ideeën voorlegt binnen het team; feedback vanuit de gebruikers te behandelen en

Bekijk vacature »

Front-end Developer WPF

Heb jij kennis en ervaring met WPF en C#? Ben je technisch en heb je goed gevoel voor design? Wil jij met jouw kennis de zorg verbeteren? Dan zijn wij op zoek naar jou! Jouw baan Als Front-end Developer bij Zorgplatform ga je werken aan de interface voor zorgprofessionals. Zorgplatform is een platform waarmee medische gegevens op een veilige manier uitgewisseld worden met andere instanties binnen de zorgsector. Zorgplatform ondersteunt onder andere het verwijzen van patiënten, het overdragen van patiënten en de gezamenlijke behandeling (shared care). Dit is hét nieuwe werken in de zorg. Met jouw oog voor design ga

Bekijk vacature »
Tortuga web

tortuga web

28/10/2019 13:23:03
Quote Anchor link
Hallo,
Ik heb een contactformulier dat ik via PHPMailer verstuur.
Ik heb alle bug-meldingen aan staan. Ik heb ook getest dat het formulier meldt wanneer er iets fout is.
Dus volgens mij, heb ik alles goed staan, en nadat ik SEND heb gedaan, krijg ik de melding dat het formulier succesvol verzonden is. Echter, de mail komt niet aan!!!
Ik heb ook spam en zo gechecked, maar daar ook niks.
Mijn code:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

    use PHPMailer\PHPMailer\PHPMailer;
    use PHPMailer\PHPMailer\Exception;

    require 'PHPMailer/src/Exception.php';
    require 'PHPMailer/src/PHPMailer.php';
    require 'PHPMailer/src/SMTP.php';
    
    //Set variables
    $firstname = $lastname = $email = $contactmessage = "";
    $err = array();
    $msg = "";
    
    //Make function to test the input data
    function test_input($data) {
        $data = trim($data);
        $data = stripslashes($data);
        $data = htmlspecialchars($data);
        return $data;
    }

    
    if ($_SERVER['REQUEST_METHOD'] == 'POST') {
        if (empty($_POST['firstname'])) {
            $err['firstname'] = "Firstname is required";
            //Limit length and strip HTML tags
        } else {
            $firstname = test_input($_POST['firstname']);
            if(!preg_match("/^[a-zA-Z ]*$/",$firstname)) {
                $err['firstname'] = 'Only letters and white space allowed!';
            }
        }

        if (empty($_POST['lastname'])) {
            $err['lastname'] = "Lastname is required";
            //Limit length and strip HTML tags
        } else {
            $lastname = test_input($_POST['lastname']);
            if(!preg_match("/^[a-zA-Z ]*$/",$lastname)) {
                $err['lastname'] = 'Only letters and white space allowed!';
            }
        }

        //Make sure the address they provided is valid before trying to use it
        if (empty($_POST['email'])) {
            $err['email'] = 'Email is required';
        }
else {
            $email = test_input($_POST['email']);
            if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
              $err['email'] = "Invalid email format";
            }
        }

        //Apply some basic validation and filtering to the message
        if (empty($_POST['contactmessage'])) {
            $err['contactmessage'] = 'What is your message';
            //Limit length and strip HTML tags
        } else {
            $contactmessage = test_input($_POST['contactmessage']);
        }

        $name = $firstname.' '.$lastname;
        if (count($err) == 0)  {
            require_once '../../data/data.php';
            $mail = new PHPMailer;
            $mail->isSMTP();
            $mail->SMTPDebug = 4;
            $mail->Host = $host;
            $mail->Port = $port;
            $mail->SMTPSecure = 'ssl';
            $mail->SMTPAuth = true;
            $mail->Username = $user;
            $mail->Password = $pass;
                //It's important not to use the submitter's address as the from address as it's forgery,
                //which will cause your messages to fail SPF checks.
                //Use an address in your own domain as the from address, put the submitter's address in a reply-to

            $mail->setFrom = ($from.', '.$fromName);
            $mail->addReplyTo($email, $name);
            $mail->addAddress = ($addAddress.', '.$addName);
            $mail->Subject = 'Contact request';
            $body = 'Name: '.$firstname.' '.$lastname;
                $body .= '<br>Email: '.$email;
                $body .= '<br>Message: '.$contactmessage;
            $mail->Body = $body;
            $mail->AltBody = $body;
                
            //include_once '../../data/data.php';
            if ($mail->send()) {
                $success = "<p style='margin-left:10%;padding-bottom:2%;width:60%'><strong>Thank you for contacting us.<br>The following message is successfully sent:</strong><br>";
                $success .= $name."<br>".$email."<br>".$contactmessage."</p>";
                
            }
        
            else {
                $fail= 'Mailer Error: ' . $mail->ErrorInfo;
            }
        }
    }

?>
 
PHP hulp

PHP hulp

25/01/2020 16:30:34
 
- Ariën -
Beheerder

- Ariën -

28/10/2019 13:32:58
Quote Anchor link
Zet de Debug eens op 3.
Wat is de debug-error die je krijgt?
 
Tortuga web

tortuga web

28/10/2019 14:33:41
Quote Anchor link
dat is het hem nou juist, ik krijg helemaal geen error. Ik krijg de melding dat de mail succesvol verstuurd is. Maar aankomen doet ie niet
 
- Ariën -
Beheerder

- Ariën -

28/10/2019 14:36:08
Quote Anchor link
Dan zou ik het eens bij je SMTP-provider zoeken.
Want als je geen foutmelding krijgt, en dus lijn 93 niet wordt aangeroepen, dan is de mail bij jouw gewoon verstuurd.
Gewijzigd op 28/10/2019 14:36:50 door - Ariën -
 
Tortuga web

tortuga web

28/10/2019 14:39:30
Quote Anchor link
Oké thanks. Zal eens informeren bij de provider
 
Ivo P

Ivo P

28/10/2019 15:45:18
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php if(!preg_match("/^[a-zA-Z ]*$/",$firstname)) { ?>


Waarom mogen Willem-Alexander en Máxima jou niet mailen?

De "-" staat niet in je lijstje toegestane tekens, net als letters met accenten.
Er is nog wat voor te zeggen om tekens als < te willen vermijden, maar dit is een vrij botte manier.

---
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php $mail->setFrom = ($from.', '.$fromName); ?>


Waar komen $from en $fromName vandaan?
Zijn die ingevuld? Als ontvangende mailserver zou dat zo maar een reden kunnen zijn om de mail niet te accepteren.
En als de server van jou dan zelf maar wat invult, is dat ook vast niet wat je wilde hebben.
 
Tortuga web

tortuga web

28/10/2019 16:05:18
Quote Anchor link
Ik blijf altijd weer problemen houden met de preg_match functies, want natuurlijk mogen zij me wel mailen, maar mister<html> niet.
Ik heb uiteindelijk de fout gevonden. Ik heb de data voor user en password in een datafile buiten de domeinroot staan in een datafile. Ik had daar ook de variabele voor de setFrom en de addAddress in staat, maar dat kan kennelijk niet???
Ik heb deze twee nu direct ingevuld in de $mail->setFrom en de $mail->addAddress en nu gaat het wel goed.
Maar ik begrijp niet goed waarom het niet met een variabele werkt.
 
Ivo P

Ivo P

28/10/2019 16:11:37
Quote Anchor link
hoe ver buiten je docroot je mag kijken met php, is in te stellen.
Op shared hosting omgevingen is dat vaak strikter dan je zou willen.

open base dir restriction is mogelijk de fout melding die je kreeg?

En hou ook in de gaten, of je include rekent vanaf het huidige script, of vanuit het door de browser aangeroepen script en dan juist weer niet door een geinclude script.
 
Tortuga web

tortuga web

28/10/2019 16:21:04
Quote Anchor link
Het is duidelijk dat de file wél gelezen wordt, want de gegevens van de user en de password komen uit diezelfde file.
Ik vermoed dat er iets niet goed is in de schrijfwijze van de setFrom gegevens.

In de datafile zet ik:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
$from = 'info@mywebsite.eu';
$fromName = 'Mijn Website';

en in het php script komt dan:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$mail->setFrom = ($from.', '.$fromName);

Dit heb ik nu dus aangepast naar:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$mail->setFrom('info@mywebsite.eu', 'Mijn Website');

Aangezien in deze laatste geen = voorkomt, vermoed ik dat de wijze van de variabelen invoeren niet juist is. Maar als ik daar het = teken weglaat, krijg ik ook een foutmelding
Gewijzigd op 28/10/2019 16:21:57 door tortuga web
 
Ivo P

Ivo P

28/10/2019 16:49:11
Quote Anchor link
Dat zijn 2 verschillende aanroepen he.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php $mail->setFrom = ($from.', '.$fromName);  ?>


hier stuur je 1 parameter naar setFrom: een string die begint met een email-adres en dan een komma en een naam.

In het 2e geval roep je de functie aan met 2 argumenten (beide argumenten gescheiden door een komma, zoals altijd in php)

Aanroep 1 zal mogelijk ook kunnen als je de string opbouwt met <> om het mailadres, maar dat is minder duidelijk

Toevoeging op 28/10/2019 16:50:31:

oh.
zie nu pas het = teken erbij staan:

setFrom is een function.

probeer het eens met

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php $mail->setFrom($from, $fromName);  ?>
 
Tortuga web

tortuga web

28/10/2019 16:54:57
Quote Anchor link
Zou het dan zo moeten zijn?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php $mail->setFrom ($from, $fromName); ?>


Toevoeging op 28/10/2019 16:55:31:

:) Ja dus
 
Thomas van den Heuvel

Thomas van den Heuvel

28/10/2019 17:09:47
Quote Anchor link
Daar zou je toch een foutmelding over moeten krijgen dan?
Of misschien kun je op die manier klasse-variabelen instellen.
Maar die methode wordt dan dus nooit uitgevoerd.

Maar PHPMailer heeft toch ook wel debug-mogelijkheden? Oftewel, je zou de opgestelde mail toch ook wel inhoudelijk kunnen inspecteren voordat je deze de deur uit stuurt?

Succesvolle verzending is -net zoals bij analoge post- geen enkele garantie voor succesvolle ontvangst, dus helemaal aan het einde controleren of je mail ontvangt is nou niet bepaald een goede of handige test om in te zoomen op eventuele fouten die daarvoor ergens optreden.
Gewijzigd op 28/10/2019 17:10:27 door Thomas van den Heuvel
 
- Ariën -
Beheerder

- Ariën -

28/10/2019 17:12:48
Quote Anchor link
De debug wordt wel aangeroepen, echter alleen als phpMailer een seintje krijgt dat het mailen niet lukt.
Als $mail->send() false teruggeeft, dan moet de debug worden aangeroepen. En als in dit geval blijkt dat er deze true is, dan ligt de oorzaak bij het 'postkantoor' oftewel de provider van de SMTP-server.
Gewijzigd op 28/10/2019 17:13:14 door - Ariën -
 
Thomas van den Heuvel

Thomas van den Heuvel

28/10/2019 17:32:07
Quote Anchor link
Dat zeg ik dus: inspecteer de mail voordat deze de deur uitgaat. Het gaat blijkbaar niet goed (er komt niets aan) en PHPMailer laat geen alarmbellen afgaan. Dan wordt het tijd om zelf op onderzoek uit te gaan. Als je ziet welke data de deur uitgaat dan heb je toch vrijwel direct een discrepantie tussen welke informatie je aan de mail meegeeft en hoe het mailtje er uiteindelijk inhoudelijk uitziet? En dan arriveer je waarschijnlijk vrijwel direct bij je setFrom() die niet goed gaat.

Dan repareer je dit eerst, het heeft immers geen enkele zin om een situatie waarvan je wéét dat deze fout is (verder) te analyseren.

Los eerst de fout op, en kijk dan of het probleem nog speelt.

Aannames doen over wat er aan de hand is als je niet weet wat er aan de hand is werkt zelden in je voordeel.

Pas als je hebt geconstateerd dat alles correct de deur uit is gegaan kun je de (voorzichtige) conclusie trekken dat er verderop, en buiten jouw applicatie, mogelijk dingen misgaan.

Dit is misschien weer een voorbeeld van "het probleem is niet het probleem", het probleem is hier de aanpak van het oplossen van dit probleem. De sensoren detecteren niets, dan wordt het tijd om je ogen te gebruiken en simpelweg eens wat te debuggen door data te dumpen. Volg gewoon het kruimelpad. Al was het maar om vast te stellen dat je zelf alles goed hebt gedaan (en nu is dus al gebleken dat dit niet zo was).
Gewijzigd op 28/10/2019 17:39:25 door Thomas van den Heuvel
 



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.