• Report an IT Security Incident
  • Request Help
  • Help & Support
    • COVID-19 Support
    • Request Help
    • Track a Ticket
    • Knowledge Base
    • Getting Started
    • Contact Us
    • ITS Alerts Sign Up
  • Service Catalog
    • Accounts & Access
    • Computers & Software
    • Email & Collaboration
    • Teaching & Learning
    • Network, Internet & Telephone
    • University Applications
    • Web, Servers & Data
  • About ITS
    • Our Team
    • Strategic Plan
    • Annual Reports
    • Awards
    • Student Employment
  • Working with ITS
    • Solution Request
    • Governance Committees
    • Portfolio and Project Management Office
    • Architectural Standards Review Board
    • Business Intelligence
    • Enterprise Data Integration Services (EDIS)
    • GMU-TV
    • IT Security Office
  • Alerts & Bulletins
    • Unplanned Outages
    • Phishing Alerts
    • Maintenance
    • Bulletins
    • Spotlights
    • After Action Reports
    • Archives
    • Known Issues
  • Report an IT Security Incident
  • Request Help
X Hide

Information Technology Services

Skip to content
  • Help & Support
    • COVID-19 Support
    • Request Help
    • Track a Ticket
    • Knowledge Base
    • Getting Started
    • Contact Us
    • ITS Alerts Sign Up
  • Service Catalog
    • Accounts & Access
    • Computers & Software
    • Email & Collaboration
    • Teaching & Learning
    • Network, Internet & Telephone
    • University Applications
    • Web, Servers & Data
  • About ITS
    • Our Team
    • Strategic Plan
    • Annual Reports
    • Awards
    • Student Employment
  • Working with ITS
    • Solution Request
    • Governance Committees
    • Portfolio and Project Management Office
    • Architectural Standards Review Board
    • Business Intelligence
    • Enterprise Data Integration Services (EDIS)
    • GMU-TV
    • IT Security Office
  • Alerts & Bulletins
    • Unplanned Outages
    • Phishing Alerts
    • Maintenance
    • Bulletins
    • Spotlights
    • After Action Reports
    • Archives
    • Known Issues

Knowledge Base

Home > Help & Support > Knowledge Base > Web, Servers & Data > Web Dev > How to Set Up an Email Form

How to Set Up an Email Form

The following PHP script allows a web site owner to collect information via a web form and have that information be submitted to an email address.

Requirements

  • The web site must reside on www.gmu.edu or some other web server that has PHP enabled and the capability to send mail. This will NOT work on mason.gmu.edu.
  • The file must have a .php extension.

How to Set Up an Email Form

Step 1

Create a new file. This can be either an empty file or a page using your existing web template.

Step 2

Copy the code below into the file.

  • If you’re using Dreamweaver, be sure to do this in Code View.
  • If you are inserting the code into an existing template, make sure you put it in a place on the page where it makes sense for a Form Sent! message to appear.

Step 3

Edit the first few lines appropriately:

  • $to
  • $from
  • $subject
  • $requiredFields

Step 4

Save the file.

Step 5

Create your web form. The form’s method should be POST (as opposed to GET), and the action should point to the file you just made. Each of the form fields should have a unique name that properly describes the field.

Step 6

Upload the files to the server. To make sure the script is working do a test submit. If the form data arrives in the intended recipient’s email box, the script is working.

Source Code

<?php
/* ---------------------------------------------
EMAIL FORM by Josh Hughes (josh@deaghean.com)
Free to use and adjust as needed
--------------------------------------------- */

/* Change these values as needed ($to determines who receives the form data) */

$to = "username@gmu.edu";
$from = "do_not_reply@gmu.edu";
$subject = "Email Form";

/* If you'd like to make sure certain fields have been filled out,
enter a comma-delimited list of required field names.
Example: $requiredFields = "field_name1, field_name2"; */

$requiredFields = "";

/* ------- ADVANCED EDITING BELOW THIS LINE ------- */

/* Make sure a form was submitted */

if (!$_POST)
$missingFields = true;
else
$missingFields = false;

/* Check required fields */

if ((trim($requiredFields) != '') and ($missingFields != true))
{
$checkFields = explode(',', $requiredFields);
for ($i = 0; $i < count($checkFields); $i++)
{
if (trim($_POST[trim($checkFields[$i])]) == '')
$missingFields = true;
}
}

/* If there are missing fields, print an error */

if ($missingFields)
{
print "<h1>Missing Fields</h1>
<p>Please go back and fill out all of the required fields.</p>";
}

else
{
$from = sprintf("From: %s", $from);
$message = "Submitted Form Values:\n\n";

/* The message is a list in the following format:
Field_name: Value of the Field */

foreach($_POST as $key => $value)
$message .= sprintf("%s: %s\n\n", $key, htmlentities($value));

/* Send the message */

$success = mail($to, $subject, $message, $from);

/* Print a success or error message */

if ($success)
print "<h1>Form Sent!</h1>
<p>Thank you for your submission!</p>";
else
print "<h1>Error!</h1>
<p>The form was <strong>NOT</strong> sent! There seems to be some sort of malfunction.</p>";
}
?>

Last modified: September 25, 2020

Previous

How to Request a Virtual Host (Shorter Web Address)

Next

How to Password Protect a Directory

Related articles

  • How to Fix Server Upload Permissions
  • How to Set Up a Personal Site
  • How to Install PuTTY SSH for Windows
  • How to Set Up a Mason Website
  • What is the mason.gmu.edu server?

Get Started at Mason

Whether you are a student, faculty, staff member, or a guest visiting the Mason campus, we have resources to help get you started.

Read More

Quick Links

Patriot Pass Password Reset
Submit a Ticket
Track a Ticket
PuTTY
Cisco AnyConnect VPN

Read More

Explore IT Services

A B C D E F G
H I J K L M N
O P Q R S T U
V W X Y Z #

© 2020 George Mason University
4400 University Drive
Fairfax, Virginia 22030

Latest tweet

George Mason ITSFollow

George Mason ITS
George Mason ITS@GeorgeMasonITS·
9h

Welcome back, Patriots! ITS is ready and excited to support you this new year. Be sure to visit http://its.gmu.edu to get up and running for the first week of classes! 🙌📚💻

Reply on Twitter 1353729583267393536Retweet on Twitter 1353729583267393536Like on Twitter 1353729583267393536
View All
ITS Support Center
703-993-8870
support@gmu.edu
live chat
Monday–Thursday,
8 a.m.–9 p.m.
Friday, 8 a.m.–5 p.m.
Saturday, Closed
Sunday, 1 p.m.–9 p.m.
(closed Thursday 3 p.m.–4 p.m. for a team meeting)
  • Webmaster