note 62572 added to function.mail

From: Date: Fri, 03 Mar 2006 16:13:26 +0000
Subject: note 62572 added to function.mail
Groups: php.notes 
Request: Send a blank email to php-notes+get-104781@lists.php.net to get a copy of this message
This is untested. function checkmail($to, $subject, $message, $from) { // Checks the to, subject, message, and from fields. // checks to ensure they are entered, makes sure the email address is proper format, checks for email // injection, and ensures that a message is not sent more than once every 30 seconds. // GETS: to, subject, message, and from // RETURNS: an error message or nothing. Nothing on success. if(!session_id()) { session_start(); } $messageerror = ""; if (!strlen($subject) > 0) { $messageerror = "You must enter a subject"; } if (!strlen($message) > 0) { $messageerror = "You must enter a message"; } if (!strlen($from) > 0) { $messageerror = "You must enter an email address"; } if (!ereg("[[:alnum:]]+@[[:alnum:]]+\.[[:alnum:]]+", $from)) { $messageerror = "You must enter a valid email address"; } if (eregi("\r", $subject) || eregi("\n", $subject) || eregi("%0a", $subject) || eregi("%0d", $subject) || eregi("Content-Type:", $subject) || eregi("bcc:", $subject) || eregi("to:", $subject) || eregi("cc:", $subject)) { $messageerror = "Email Injection detected. Your message has not been sent."; } else { } if (eregi("\r", $to) || eregi("\n", $to) || eregi("%0a", $to) || eregi("%0d", $to) || eregi("Content-Type:", $to) || eregi("bcc:", $to) || eregi("to:", $to) || eregi("cc:", $to)) { $messageerror = "Email Injection detected. Your message has not been sent."; } else { } if (eregi("\r", $from) || eregi("\n", $from) || eregi("%0a", $from) || eregi("%0d", $from) || eregi("Content-Type:", $from) || eregi("bcc:", $from) || eregi("to:", $from) || eregi("cc:", $from)) { $messageerror = "Email Injection detected. Your message has not been sent."; } else { } if ($messageerror == "") { if (isset($_SESSION['rightnow'])) { if (date('U') > ($_SESSION['rightnow'] + 30)) { $_SESSION['rightnow'] = date('U'); } else { $remaintime = ($_SESSION['rightnow'] + 30) - date('U'); $messageerror = "You cannot send another message for " . $remaintime . " seconds"; } } else { $_SESSION['rightnow'] = date('U'); } } return $messageerror; } ---- Server IP: 216.194.113.175 Probable Submitter: 207.250.109.251 ---- X-Spam-Status: No, hits=3.1 required=5.0 tests=DATE_MISSING,FROM_NO_LOWER autolearn=no version=2.64 ---- Manual Page -- http://www.php.net/manual/en/function.mail.php Edit -- http://master.php.net/note/edit/62572 Del: integrated -- http://master.php.net/note/delete/62572/integrated Del: useless -- http://master.php.net/note/delete/62572/useless Del: bad code -- http://master.php.net/note/delete/62572/bad+code Del: spam -- http://master.php.net/note/delete/62572/spam Del: non-english -- http://master.php.net/note/delete/62572/non-english Del: in docs -- http://master.php.net/note/delete/62572/in+docs Del: other reasons-- http://master.php.net/note/delete/62572 Reject -- http://master.php.net/note/reject/62572 Search -- http://master.php.net/manage/user-notes.php

« previous php.notes (#104781) next »