PHP:lla tai muulla serveripuolen teknologialla onnistuu. Javascript toimii selaimessa, eli sillä ei voi ilman välikäsiä lähettää sähköpostia.
Ensin tulee rakentaa lomake, jonka uloimpana rakenteena on form-tagi. Form-tagin sisällä on inputteja, joihin käyttäjä voi mm. syöttää dataa. Inputteja löytyykin hyvin tuosta Hazelin laittamasta linkistä. Lähetyspainike on myös input, tyyppiä type='submit', ja sitä painamalla kaikkien form-tagin sisällä olevien inputien arvot lähetetään sille sivulle, joka on määritelty form-tagin action-attribuutissa. Jos action-attribuutti puuttuu, lomake lähettää tiedot samalle sivulle kuin missä itse lomake sijaitsee.
Yksinkertainen esimerkki html-lomakkeesta: https://www.w3schools.com/tags/tryit.asp?filename=tryhtml_form_action
PHP:lla pääsee käsiksi lomakkeen dataan inputtien name-attribuutin perusteella. Array, jossa kaikki nämä arvot sijaitsevat on useimmiten joko $_GET tai $_POST, ja se voidaan määrätä html form-tagissa olevan method-attribuutin perusteella. Yleisimmin sähköpostilomakkeissa käytetään POST-metodia.
Esimerkki lomakkeen käyttämisestä PHP-sivulla: https://www.w3schools.com/php/php_forms.asp
Jotta saat käyttäjän inputteihin syöttämän datan omaan sähköpostiisi, tulee käyttää PHP:n sisäänrakennettua mail()-funktiota. On myös järkevää käsitellä tai tarkistaa inputtien dataa jotenkin ennen kuin postitat sen sähköpostiisi esim. XSS-hyökkäysten tai roskapostituksen varalta, mutta en mene siihen nyt sen pidemmin.
PHP mail-tietosivu: https://www.php.net/manual/en/function.mail.php