mail versturen

Status
Niet open voor verdere reacties.

speng002

Gebruiker
Lid geworden
10 apr 2020
Berichten
25
Goede Middag,

Mag ik jullie vriendelijk om hulp vragen alstublieft?

Ik heb al stevig wat gegoogeld maar ik kom er maar niet uit.
kunnen jullie mij helpen om dit werkend te krijgen


ik probeer met een link een email te versturen dit lukt ook
maar is het nu mogelijk om met een input vak 3x een variabele invoeren
een astrid nummer een postcode en huis nr in te voeren
en deze in de body te zetten zodat deze mee gestuurd worden

op de positie astrid nummer XXXXX
en postcode YYYYXX
en huis nr BBB

Al vast bedankt

Dit is wat ik tot nu toe gemaakt heb
Code:
<!DOCTYPE html>
<html>
<body>
<a href="mailto:mijnemailadres.com?subject=Inplannen
 &body=
Astrid nummer XXXXXX   verplicht %0d
Postcode is YYYYXX verplicht %0d
Huis nr BBB %0d
%0d
Gaarne afspraak maken %0d
met vriendelijke groet%0d
">Stuur een e-mail</a>
</body>
</html>
 
is het niet zinvoller om met bijv. via PHP een contactformulier te maken?
 
In een meest simpele vorm kan je dit doen met Javascript
Code:
<!DOCTYPE html>
<html>
<head>
<title>Formulier</title>
</head>
<body>

<a id="mailto" href=""></a>

<form id="gegevens" action="">
Astrid nr:<br><input type="text" id="astrid" required>
<br>Postcode:<br><input type="text" id="postcode" required>
<br>Huisnr:<br><input type="text" id="huisnr" required>
<br><br><button type="submit">Verstuur</button>
</form>

<script>
var formulier = document.getElementById("gegevens");
formulier.addEventListener("submit", function(event) {
    event.preventDefault();
    var astrid = this.elements.astrid.value;
    var postc  = this.elements.postcode.value;
    var huisnr = this.elements.huisnr.value;
    var txt = "mailto:mijnemailadres.com?subject=Inplannen"
    + "&body=" + astrid + "%0d"
    + "Postcode is " + postc + "%0d"
    + "Huis nr is " + huisnr + "%0d%0d"
    + "Gaarne afspraak maken%0d"
    + "Met vriendelijke groet%0d";
    document.getElementById("mailto").href = txt;
    document.getElementById("mailto").click();
});
</script>

</body>
</html>

Zoals php4u al aangaf werkt PHP veel beter maar daarvoor is PHP op de webserver vereist en enige kennis van PHP is dan wel handig ;)

Nog een opmerking bij het gebruik van mailto. Bij de meeste pc's waarop Office Outlook is geïnstalleerd zal Windows Mail opstarten in plaats van Outlook Mail. Dat is erg vervelend voor die gebruikers.
 
Laatst bewerkt:
In een meest simpele vorm kan je dit doen met Javascript

Nog een opmerking bij het gebruik van mailto. Bij de meeste pc's waarop Office Outlook is geïnstalleerd zal Windows Mail opstarten in plaats van Outlook Mail. Dat is erg vervelend voor die gebruikers.

Om deze reden zou ik het met PHP oplossen. Stel dat je op je werkt zit te pauzeren, en even snel wat wilt bestellen bij een winkel, en dit verplicht via je werkmail moet laten gaan.
Of dat je op een openbare PC werkt.
 
Moet je dan op de server ook geen mailserver SMTP of iets anders beschikbaar hebben ? Via welk kanaal stuur je dan als je de lokale mailclient niet gebruikt ?
 
Moet je dan op de server ook geen mailserver SMTP of iets anders beschikbaar hebben ? Via welk kanaal stuur je dan als je de lokale mailclient niet gebruikt ?
Ja, maar als je een hosting of server via je hosting hebt, dan is dat vaak wel geregeld.
 
Ik had het vermoeden dat TS dat nét niet goed genoeg kon inschatten en daarom maar de mail van de 'bezoeker' lokaal wou gebruiken ... TS ? reageer je even ?
 
Hoi

ik heb op mijnemailadres.com mijn eigen email adres gezet
ik heb het uitgeprobeerd maar het werkt nog niet
zodra ik op de button versturen klik gebeurd er niets

zou u voor mij nog een keer hier naar willen kijken
alvast bedankt
 
Antwoord je eens op de vragen uit de vorige posts aub ?

  • SMTP server ter beschikking op die website hosting of niet ?
  • PHP beschikbaar ?

Wat je probeerde was de PC van de bezoeker van de site en zijn mailclient te gebruiken ...
Wat de collega-oplossers hier lieten zien is een alternatief om de mail vanop de server zelf te versturen.

Het is dus van belang te weten wat je ter beschikking hebt.
 
Als je niet weet wat je ter beschikking hebt, laat even weten waar jij je website host, en welk pakket je daar hebt.
 
Oops, een foutje in het script. Omdat de href een url is moeten bepaalde tekens en spaties worden gecodeerd.
Daarom op de juiste plekken een encodeURIComponent toegevoegd. Probeer dit eens...
Code:
<script>
var formulier = document.getElementById("gegevens");
formulier.addEventListener("submit", function(event) {
    event.preventDefault();
    var mymail = "info@example.nl";
    var onderw = encodeURIComponent("Nu Inplannen");
    var astrid = this.elements.astrid.value;
    var postc  = this.elements.postcode.value;
    var huisnr = this.elements.huisnr.value;
    var tekst  = encodeURIComponent("Astrid nr is " + astrid) + "%0d"
      + encodeURIComponent("Postcode is " + postc) + "%0d"
      + encodeURIComponent("Huis nr is " + huisnr) + "%0d%0d"
      + encodeURIComponent("Gaarne afspraak maken") + "%0d"
      + encodeURIComponent("Met vriendelijke groet") + "%0d";
    var url = "mailto:" + mymail + "?subject=" + onderw + "&body=" + tekst;
    document.getElementById("mailto").href = url;
    document.getElementById("mailto").click();
});
</script>

De onderstaande regel niet aanpassen want daar is het script voor
Code:
<a id="mailto" href=""></a>

Als je PHP 7 en SMTP op de webserer tot je beschikking hebt dan zou je kunnen kijken naar PHPMailer https://github.com/PHPMailer/PHPMailer . In het mapje examples vind je simple_contact_form. Een minimale kennis van PHP is nodig.
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan