Simple Form Script
Why:
Simple Form Script is my response to the other form scripts out there. Before I learned to program I searched hours for a script that would allow me to put any type of html fields and just send it to my email. Other scripts only have predefined fields allowed. Maybe there will be a name and email and comment box, but it would not let me pick what I wanted. I hope that others will not have to experience my frustration.
What:
- Automatically recongnizes all form fields
- You only set your email address
- Optionally require all fields to not be empty
- Requires PHP 4.10 or above
Where:
How:
Instructions are included in readme file.
Source:
<?php
// Simple Form Script
// Copyright (C) 2005 Eric Zhang
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// Please send bugs/questions to erkzh@yahoo.com.
//--------------------------Set these paramaters--------------------------
$subject = 'Form Submission'; // Subject of email sent to you.
$emailadd = 'youremail@anywhere.com'; // Your email address. This is where the form information will be sent.
$url = 'http://www.yahoo.com'; // Where to redirect after form is processed.
$req = '1'; // Makes all fields required. If set to '1' no field can not be empty. If set to '0' any or all fields can be empty.
// --------------------------Do not edit below this line--------------------------
$text = "Results from form:\n\n";
$space = ' ';
$line = '
';
foreach ($_POST as $key => $value)
{
if ($req == '1')
{
if ($value == '')
{echo "$key is empty";die;}
}
$j = strlen($key);
if ($j >= 20)
{echo "Name of form element $key cannot be longer than 20 characters";die;}
$j = 20 - $j;
for ($i = 1; $i <= $j; $i++)
{$space .= ' ';}
$value = str_replace('\n', "$line", $value);
$conc = "{$key}:$space{$value}$line";
$text .= $conc;
$space = ' ';
}
mail($emailadd, $subject, $text, 'From: '.$emailadd.'');
echo '<META HTTP-EQUIV=Refresh CONTENT="0; URL='.$url.'">';
?>