contactmail versturen mbv phpMailer

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Oracle APEX Ontwikkelaar (3.500-6.000 euro)

Bedrijfsomschrijving Ben jij een getalenteerde Oracle APEX ontwikkelaar met minimaal één jaar ervaring in het ontwikkelen van Oracle APEX-applicaties? Ben je gepassioneerd over het ontwikkelen van bedrijfskritische oplossingen en wil je werken bij een toonaangevend consultancybedrijf? Dan zijn wij op zoek naar jou! Deze organisatie beschikt over zowel inhouse als externe projecten, maar bovenal over een sterk team en netwerk van opdrachten waardoor jij jezelf verder kunt ontwikkelen. Het team bestaat uit een aantal junior en medior developers, maar vooral uit senioren. De business unit managers binnen het team zijn mensen die hun vak verstaan en zelf als Oracle APEX

Bekijk vacature »

Senior front end developer Digital Agency Amsterda

Functie Wij werken in multidisciplinaire teams aan verschillende projecten, echter blijf je niet gebonden aan 1 team. Dit houdt in dat wij verschillende specialisten in dienst hebben en deze door middel van een roulatiesysteem in multidisciplinaire teams laten werken. Het team bestaat vaak uit Frontend developer(s), Backend Developer(s), Designer(s), Tester(s) en Mobile Developer(s). Deze teams worden afgewisseld waardoor jij de mogelijkheid krijgt om met iedereen een keer samen te werken. Als Frontend Developer ben jij ónze Specialist op dit gebied. Jij werkt mee aan verschillende projecten voor verschillende klanten. Denk bijvoorbeeld aan klanten, zoals’; BAM, IDFA en Ultimaker. Hierbij zorg

Bekijk vacature »

.NET developer

Functie Als .NET developer werk jij samen in een multidisciplinair ontwikkel team met 1-2 Senior .NET developers, twee front-end developers, Data Scientists en één UX designer. Als team werken jullie aan het ontwikkelen van een Cloud based applicatie en aan het stabieler maken van deze applicatie. Ook unit testing gaat erg belangrijk worden in jouw nieuwe functie. Samen met de Senior .NET ontwikkelaar wordt jij verantwoordelijk voor het ontwikkelen van de API. Jullie werken met veel data en incidenteel komen er ook data vraagstukken en zullen er wat queries gedraaid moeten worden. Dit betekend dat jij veel gaat werken met

Bekijk vacature »

C# .NET Developer

Functie omschrijving Wij zijn op zoek naar een C# .NET Developer voor een leuke opdrachtgever in de omgeving van Hilversum! Voor een leuk bedrijf in de omgeving van Hilversum zijn wij op zoek naar een Back-end developer die klaar is voor een nieuwe uitdaging. Ben jij iemand die graag aan verschillende projecten werkt en het ook leuk vindt om bij klanten op bezoek te gaan? Dan ben jij de perfecte kandidaat! Deze functie is erg divers, je moet dus goed kunnen schakelen. Je komt te werken in een klein team van developers. Binnen het bedrijf hangt er een gemoedelijke informele

Bekijk vacature »

VB.NET developer

Functie Het development team waar jij in terecht komt bestaat uit twee ervaren software developers. De directeur/eigenaar is tevens één van deze developers. Jij werkt direct samen met jouw werkgever en kan dan ook veel kennis en ervaring bij dit bedrijf op doen. Als team zijn jullie verantwoordelijk voor de kantoorapplicatie die deze organisatie aanbied in een niche markt. Het team is op dit moment actief bezig met een migratie waarbij het eindstation eindigt in een C# .NET omgeving. Echter is een deel van de software al geschreven in C# .NET. Hierbij is gebruik gemaakt van C# .NET, CSS, HTML,

Bekijk vacature »

Gezocht: .Net ontwikkelaars met een maatschappelij

Bedrijfsomschrijving Zoek jij als medior .Net ontwikkelaar een inspirerende werkplek bij een bedrijf met maatschappelijk verantwoordelijkheidsgevoel? Dan is deze vacature je op het lijf geschreven. De organisatie bestaat ruim 20 jaar en ze ontwikkelen in house applicaties waarmee de zorgsector enorm mee gebaat is. Jouw applicaties worden gebruikt door duizenden gebruikers waardoor je echt een waardevolle bijdrage kan leveren aan de maatschappij. Het bedrijf is zeer innovatief en vindt een goede werk/privé balans belangrijk. Je krijgt alle mogelijkheden om jezelf verder te ontwikkelen, je werktijden in te delen en daarnaast is het ook mogelijk om deels thuis te werken. Het

Bekijk vacature »

Back-end .NET Developer

Functie omschrijving C# / .NET Developer gezocht voor een dynamische organisatie in de regio Houten! Voor een leuke organisatie in de regio Houten zijn wij op zoek naar een Back-end developer die klaar is voor een nieuwe uitdaging. In deze functie werk jij aan verschillende projecten en ga je vaak bij klanten op bezoek. Binnen deze functie kun je een grote mate van uitdaging, diversiteit en verantwoordelijkheid treffen. Bedrijfsprofiel Waar ga je werken? Het bedrijf waar je gaat werken is gespecialiseerd in het ontwerpen en implementeren van procesautomatisering en procesinformatisering. Zij doen dit onder andere voor de (petro)chemie, pharma, infra,

Bekijk vacature »

Fullstack JavaScript developer (ReactJS, NodeJS, T

Functie Het team bestaat momenteel uit ruim 15 collega’s, waarvan ruim de helft in het ontwikkelteam werkzaam is. Er zijn gave plannen om het platform ook te gaan toepassen op bijv. vliegvelden, maar ook internationale groei zit in het verschiet en daarom zijn ze op zoek naar versterking. Als Fullstack JavaScript developer werk je nauw samen met 9 fullstack (Python en .NET) developers. Binnen het team ga jij je toespitsen op het creeren van de optimale toegankelijkheid en user experience. Om dit voor elkaar te krijgen zul je ontwerpen, programmeren, testen en implementeren. Het hele proces dus! Maar ook bijvoorbeeld

Bekijk vacature »

Delphi Programmeur

Functie omschrijving Onze opdrachtgever is gespecialiseerd in kantoor-bedrijfssoftware en zit gevestigd in omgeving Numansdorp. Als programmeur ben jij bij dit bedrijf met het volgende bezig; Je vertaalt technische en functionele ontwerpen naar kwalitatieve software. Je ontwikkelt, ontwerpt en test software. Je maakt daarbij veel gebruik met de volgende tools & technologieën: Delphi 10.3 (Rio), QuickReport 6. Je krijgt in deze rol veel vrijheid en verantwoordelijkheid. Je levert projecten van A - Z op, en werkt daarbij projectmatig en gestructureerd. Bedrijfsprofiel Dit bedrijf richt zich op maatwerk software oplossingen. Deze software oplossingen worden ingezet in de financiële branche. Het betreft een

Bekijk vacature »

Medior PHP Developer

Bij Getnoticed doen wij wat we leuk vinden, websites bouwen en online marketing. Voor veel van onze klanten doen we dan ook allebei. Wel zo fijn om campagnes te draaien voor conversiegerichte website die in eigen beheer zijn. In onze vestiging in Nederweert zitten onze development afdelingen en worden de websites gebouwd. Op dit moment zijn we op zoek naar jou: dé PHP/Back-end developer die net als wij, het hoofd boven het maaiveld durft uit te steken! In het kort Even een paar punten die omschrijven wat deze toffe baan inhoudt: Het bedenken van nieuwe functionaliteiten Het verbeteren van het

Bekijk vacature »

Developer Front-end

Functie omschrijving Front-end Developer gezocht! Wij zijn op zoek naar een front-end developer voor een organisatie in de regio Veenendaal die de eindverantwoordelijkheid op zich neemt van alles wat met design te maken heeft. Je hebt in deze functie een adviserende rol hiervoor moet je beschikken over een grote dosis vakinhoudelijke kennis. Je creëert unieke concepten door samen met collega’s en klanten te overleggen over aangeleverde designs. Hiermee draag jij je steentje bij aan de groeiambities van de klant. Jij wordt het vaste aanspreekpunt voor klanten wanneer het gaat over planningen, hierin is het jouw taak om alle betrokkenen goed

Bekijk vacature »

Applicatieontwikkelaar Java EE

Bedrijfsomschrijving De IV- organisatie van de Belastingdienst is verantwoordelijk voor en verzorgt de ICT- voorzieningen. Het merendeel van de applicaties wordt op dit moment door de IV- organisatie zelf ontwikkeld, onderhouden en beheerd in het eigen data center. Naast de zorg voor continuïteit op de massale heffing- en inningsprocessen die plaatsvinden binnen een degelijke, stabiele omgeving, wordt er tevens volop gewerkt aan modernisering van het IV- landschap. Dit gebeurt deels intern door gebruik te maken van de expertise die intern aanwezig is, maar ook door het aantrekken van (kant-en-klaar) oplossingen en expertise uit de markt. Functieomschrijving De afdeling IV –

Bekijk vacature »

Full Stack Java ontwikkelaar

Functieomschrijving Voor de politie zijn wij op zoek naar een Full stack Java ontwikkelaar. Als ervaren full stack Java ontwikkelaar binnen de gewenste deadlines meewerken aan de totstandkoming van de gewenste werkzaamheden. Taken Upgraden van GeoServer, SOLR, Oracle Spatial database, Tomcat Migreren Oracle Spatial naar PostgreSQL/PostGIS Migreren SOLR naar ElasticSearch Geografische gegevens op het interne netwerk beschikbaar maken Doorontwikkelen en actualiseren van de geografische services Het up to date brengen van de CI/CD pipeline, samen met medewerkers die verantwoordelijk zijn voor de CI/CD tooling Aanspreekbaar op de solution architectuur en stemt die met collega's in het cluster Geo De opdracht

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Junior Low-code ontwikkelaar gezocht omgeving Arnh

Bedrijfsomschrijving Wij zijn een dynamisch IT-bedrijf dat zich richt op het stroomlijnen van bedrijfsprocessen en het creëren van ondersteunende applicaties. Onze kracht ligt in het combineren van zakelijk inzicht met IT-expertise via gestroomlijnde procesontwerpen en wendbare applicatieontwikkeling met behulp van Low-code technologieën. Als jonge professional krijg je de kans om samen te werken met een team van 15 deskundige collega's, verspreid over nationale en internationale locaties. We bieden je een leerzame omgeving waar je je vaardigheden kunt ontwikkelen en groeien in je rol als Low-code ontwikkelaar. Word jij onze nieuwe Junior Low-code Ontwikkelaar (OutSystems)? Versterk ons team en draag bij

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

20/05/2024 16:03:07
 
- 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 = '[email protected]';
$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('[email protected]', '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.