База знаний

PHP-lomakkeenkäsittelijä

Tämän ohjeen avulla voit luoda sivuillesi lomakkeenkäsittelijän esim. palautelomakkeen kautta lähetettyjen viestien toimittamiseksi omaan sähköpostiisi.

Luo kotisivuhakemistoon php-tiedosto, esim. lomake.php:

<?php
$lahettaja = $_REQUEST['lahettaja'];
$viesti = $_REQUEST['viesti'];
mail( "[email protected]", "Lomake",
$viesti, "From: $lahettaja" );
header( "Location: http://www.domadomain.com/kiitos.php" );
?>

Vaihda kohtaan [email protected] oma sähköpostiosoitteesi. Lomakkeen viestit lähetetään tähän osoitteeseen.

Kohtaan kiitos.php voit vaihtaa haluamasi kohdesivun, jolle kävijä ohjataan lomakkeen lähettämisen jälkeen.

Lisää seuraavanlainen html-koodi sivulle johon haluat lisätä lomakkeen:

<form method="post" action="lomake.php">
Sähköpostiosoite: <input name="lahettaja" type="text" /><br />
Viesti:<br />
<textarea name="viesti" rows="15" cols="40">
</textarea><br />
<input type="submit" />
</form>

vaihtoehtolomake 2

<!DOCTYPE html>
<html lang="fi">
<head>
<meta charset="UTF-8">
<title>Yhteyslomake</title>
</head>
<body>
<form action="send_email.php" method="post">
<label for="nimi">Nimi:</label><br>
<input type="text" id="nimi" name="nimi" required><br>
<label for="email">Sähköposti:</label><br>
<input type="email" id="email" name="email" required><br>
<label for="viesti">Viesti:</label><br>
<textarea id="viesti" name="viesti" required></textarea><br>
<input type="submit" value="Lähetä">
</form>
</body>
</html>



PHP send_email.php

<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$nimi = strip_tags(trim($_POST["nimi"]));
$email = filter_var(trim($_POST["email"]), FILTER_SANITIZE_EMAIL);
$viesti = trim($_POST["viesti"]);

// Tarkista, että data on lähetetty
if ( empty($nimi) OR !filter_var($email, FILTER_VALIDATE_EMAIL) OR empty($viesti)) {
// Jos lomakkeen tiedoissa on virheitä, esimerkiksi ohjaus takaisin lomakesivulle
echo "Täytä kaikki kentät!";
exit;
}

// Minne sähköposti lähetetään
$vastaanottaja = "[email protected]";

// Sähköpostin aihe
$aihe = "Uusi viesti lomakkeeltasi: $nimi";

// Viestin rakenne
$sahkopostiviesti = "Nimi: $nimi\n";
$sahkopostiviesti .= "Sähköposti: $email\n\n";
$sahkopostiviesti .= "Viesti:\n$viesti\n";

// Sähköpostin lähetysheaders
$headers = "From: $nimi <$email>";

// Lähetä sähköposti
if (mail($vastaanottaja, $aihe, $sahkopostiviesti, $headers)) {
echo "Viestisi on lähetetty.";
} else {
echo "Viestisi lähettäminen epäonnistui.";
}
} else {
// Ei POST-pyyntöä, ohjaa takaisin lomakesivulle.
header("Location: form.html");
}
?>




  • 5 Пользователи нашли это полезным
Помог ли вам данный ответ?