PHP Mail Script - 11/01/04 02:33 AM
A little mail script i wrote that tells you when you didn't fill out a field, and allows you to ban ip addresses from viewing the page. Any suggestions for optimizations, additions, or removals? Comments?
Code
<?php # Ghost's PHP Mail Script v1.3 # The source from this script may be freely distributed so long as credit is given $ip = $_SERVER['REMOTE_ADDR']; $banfile = fread(fopen("banip.txt", "r"), filesize("banip.txt")); $file = fopen("maillog.txt", "a+"); $address = $_SERVER['REMOTE_ADDR']; $mailaddress = $_POST['address']; $subject = $_POST['subject']; $from = $_POST['from']; $message = $_POST['message']; $submitted = $_POST['submitted']; fwrite($file, "Page View: \n $address \n\n"); if(strstr($banfile, "$ip")) { die("Banned."); }; if(strpos($mailaddress, "@") && strpos($from, "@") && $subject !== NULL && $message !== NULL) { fwrite($file, "Message: \n $address \n $mailaddress \n $date \n $message \n\n"); mail($mailaddress, $subject, $message, "Return-Path: $from\n" . "From: $from\n" . "X-Sent-With: Ghost's PHP Mail Sender v1.4"); echo "Your mail has been sent"; } elseif($submitted == "1") { if(!strpos($mailaddress, "@")) { echo "You need to input an address for the \"Address\" field. "; }; if($subject == NULL) { echo "You need to input a subject for the \"Subject\" field. "; }; if(!strpos($from, "@")) { echo "You need to input an address for the \"Return Address\" field. "; }; if($message == NULL) { echo "You need to input a message to send in the \"Message\" field. "; }; echo " <html> <head> <title>Mail Page</title> </head> <body> <form action=\"mail.php\" method=\"post\"> Address: <input type=\"text\" name=\"address\"> Subject: <input type=\"text\" name=\"subject\"> Return Address: <input type=\"text\" name=\"from\"> Message: <textarea name=\"message\"></textarea> <input type=\"hidden\" name=\"submitted\" value=\"1\"> <input type=\"submit\"> </form> </body> </html> "; } else { echo " <html> <head> <title>Mail Page</title> </head> <body> <form action=\"mail.php\" method=\"post\"> Address: <input type=\"text\" name=\"address\"> Subject: <input type=\"text\" name=\"subject\"> Return Address: <input type=\"text\" name=\"from\"> Message: <textarea name=\"message\"></textarea> <input type=\"hidden\" name=\"submitted\" value=\"1\"> <input type=\"submit\"> </form> </body> </html> "; }; ?>