PHP Academy · Les

Een contactformulier maken

Bouw een contactformulier dat berichten via e-mail verzendt

Les 2 van 210 stappen

Een contactformulier maken is een gratis PHP Academy-les op CoddyKit. Dit is les 2 van 2. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject PHP Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus PHP Academy bevat in totaal 2 lessen.

Inleiding tot het contactformulierproject

Een contactformulier maken

Welkom bij de les over het maken van een contactformulier! In dit project leer je hoe je een contactformulier bouwt waarmee gebruikers berichten per e-mail kunnen versturen. Laten we beginnen!

Een contactformulier maken — illustratie 1

Het project instellen

Controleer voordat je begint of je het volgende hebt:

  • Een webserver zoals XAMPP of WAMP.
  • Een teksteditor of IDE, bijvoorbeeld VS Code.
  • Een bestand met de naam contact.php in je projectmap.
  • De PHP-functie mail() ingeschakeld, wat nodig is om e-mails te versturen.

Tip: Voor lokaal testen moet je mogelijk de instellingen van je mailserver configureren.

Het eenvoudige HTML-formulier maken

Begin met het maken van de HTML-structuur voor je contactformulier. Voorbeeld:

Belangrijk: Gebruik het attribuut required om ervoor te zorgen dat alle velden vóór het verzenden zijn ingevuld.

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Contact Form</title>
</head>
<body>
  <h1>Contact Us</h1>
  <form action="contact.php" method="post">
    <label for="name">Name:</label><br>
    <input type="text" id="name" name="name" required><br><br>
    
    <label for="email">Email:</label><br>
    <input type="email" id="email" name="email" required><br><br>
    
    <label for="message">Message:</label><br>
    <textarea id="message" name="message" rows="5" required></textarea><br><br>
    
    <button type="submit" name="submit">Send Message</button>
  </form>
</body>
</html>

De formuliergegevens verwerken

Verwerk in je bestand contact.php het verzenden van het formulier. Voorbeeld:

Tip: Gebruik htmlspecialchars() om XSS-aanvallen te voorkomen door HTML-tekens te maskeren.

<?php
  if (isset($_POST['submit'])) {
    $name = htmlspecialchars($_POST['name']);
    $email = htmlspecialchars($_POST['email']);
    $message = htmlspecialchars($_POST['message']);

    echo "Name: $name<br>";
    echo "Email: $email<br>";
    echo "Message: $message<br>";
  }
?>

De invoer valideren

Valideer de invoer voordat je deze verwerkt, zodat je zeker weet dat deze aan je vereisten voldoet. Voorbeeld:

Belangrijk: Valideer de invoer van gebruikers altijd om ongeldige of schadelijke gegevens te voorkomen.

<?php
  if (isset($_POST['submit'])) {
    if (!filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {
      echo "Invalid email address.";
      exit;
    }

    $name = htmlspecialchars($_POST['name']);
    $email = htmlspecialchars($_POST['email']);
    $message = htmlspecialchars($_POST['message']);

    echo "Valid input. Processing...";
  }
?>

De e-mail versturen

Gebruik de PHP-functie mail() om de formuliergegevens naar een e-mailadres te versturen. Voorbeeld:

Tip: Gebruik een geldig From-adres om problemen met de bezorging van e-mails te voorkomen.

<?php
  if (isset($_POST['submit'])) {
    $to = "admin@example.com"; // Replace with your email
    $subject = "New Contact Form Submission";
    $message = "Name: $name\nEmail: $email\nMessage:\n$message";
    $headers = "From: $email";

    if (mail($to, $subject, $message, $headers)) {
      echo "Message sent successfully!";
    } else {
      echo "Failed to send the message.";
    }
  }
?>

Het formulier uitbreiden

Je kunt de volgende verbeteringen toevoegen:

  • Geef succes- of foutmeldingen weer in het formulier zelf.
  • Geef het formulier met CSS een betere gebruikersinterface.
  • Implementeer CAPTCHA om spamverzendingen te voorkomen.

Belangrijk: Verbeteringen verhogen de gebruikservaring en de beveiliging.

Problemen met e-mail oplossen

Als de e-mail niet wordt verzonden, controleer je het volgende:

  • Controleer of de PHP-functie mail() is ingeschakeld.
  • Controleer of het e-mailadres in From geldig is.
  • Controleer de maillogboeken van je server op fouten.

Tip: Overweeg een bibliotheek zoals PHPMailer te gebruiken voor geavanceerde e-mailfuncties.

Goed gedaan!

Gefeliciteerd! Je hebt in PHP een functioneel contactformulier gebouwd. Je hebt geleerd hoe je het formulier maakt, de gegevens ervan verwerkt, de invoer valideert en e-mails verstuurt. In de volgende les bouwen we nog een leuk project om je PHP-vaardigheden verder te ontwikkelen. Laten we blijven programmeren!

Een contactformulier maken — illustratie 10
Gratis beginnen

Leer PHP met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
49
Lessen
195

Veelgestelde vragen

Is de les “Een contactformulier maken” gratis?

Ja — de volledige tekst van “Een contactformulier maken” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus PHP Academy wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus PHP Academy bevat in totaal 2 lessen.

Wat leer ik in “Een contactformulier maken”?

Bouw een contactformulier dat berichten via e-mail verzendt Je oefent met PHP Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met PHP Academy te beginnen?

Ervaring vooraf is niet nodig. PHP Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 2 van 2.

Hoe lang duurt de les “Een contactformulier maken”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over PHP Academy?

Ja. Elke les over PHP Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. Een eenvoudige takenlijst bouwen
  2. Een contactformulier maken
← Terug naar PHP Academy