Sppofing headers isn't something I'll show you how to do, however : <? if( $_POST ): if( !mail( $_POST['to'], $_POST['subject'], nl2br( $_POST['message'] ), "Content-type: text/html\r\n". "From: $_POST[from] <$_POST[from]>\r\n" ) ): $messages = sprintf( "When attempting to mail %s @ %s on %s I have encountered an error", $_POST['to'], date( "h:m:s", time( ) ), date( "F m y", time( ) ) ); else : $messages = sprintf( "Message queued for delivery to %s", $_POST['to'] ); endif; endif; ?> <?=$messages ?> <form action="" method="post" > To : <input type="text" name="to" /><br /> From : <input type="text" name="from" /><br /> Subject : <input type="text" name="subject" /><br /> Message :<br /> <textarea rows="10" cols="30" name="message"></textarea><br /> <input type="submit" value="Send Email" /> </form> PHP: