Written by: Geoffrey Callaghan
CREATE A contact form with Heroku
Create A Contact Form With Heroku
Creating a contact form with Heroku using FabForm involves several steps, including setting up your HTML form, deploying it to a Heroku web app, and configuring FabForm to handle the form submissions. Here’s a comprehensive guide to help you through the process:
Create a simple HTML file for your contact form. This file will be deployed on Heroku.
<!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>
<form action="https://fabform.io/f/YOUR_FORM_ID" method="POST">
<label for="name">Name:</label>
<input type="text" id="name" name="name" required><br>
<label for="email">Email:</label>
<input type="email" id="email" name="email" required><br>
<label for="message">Message:</label>
<textarea id="message" name="message" required></textarea><br>
<button type="submit">Submit</button>
</form>
</body>
</html>
Replace the YOUR_FORM_ID
in the action
attribute of the form tag with the form ID you copied from FabForm. For example, if your form ID is abc123
, your form tag should look like this:
<form action="https://fabform.io/f/abc123" method="POST">
mkdir contact-form
cd contact-form
git init
index.html
: Add your HTML form code here.
Procfile
: Heroku needs a Procfile
to know how to run your application. Create a file named Procfile
with the following content:
web: python -m http.server 8000
requirements.txt
file if you’re using Python. This file is needed to tell Heroku which dependencies to install. For serving a simple HTML file, you don’t need any dependencies, but you can create the file for completeness:touch requirements.txt
heroku login
heroku create
git add .
git commit -m "Initial commit"
git push heroku master
After deployment, navigate to the URL of your Heroku app to find your contact form. Test the form to ensure submissions are being sent to FabForm correctly.
redirect
input field in your form:<input type="hidden" name="redirect" value="https://yourherokuapp.herokuapp.com/thank-you">
Here’s how your final HTML form might look:
<!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>
<form action="https://fabform.io/f/abc123" method="POST">
<label for="name">Name:</label>
<input type="text" id="name" name="name" required><br>
<label for="email">Email:</label>
<input type="email" id="email" name="email" required><br>
<label for="message">Message:</label>
<textarea id="message" name="message" required></textarea><br>
<input type="hidden" name="redirect" value="https://yourherokuapp.herokuapp.com/thank-you">
<button type="submit">Submit</button>
</form>
</body>
</html>
By following these steps, you should be able to create a contact form with Heroku using FabForm successfully.