On Wed, 16 Aug 2006 15:54:32 -0500, Richard Lynch wrote:

> On Wed, August 16, 2006 4:53 am, Ross wrote:
>>
>> Been having loads of problems with this and have solved it using the
>> phpmailer. The only problem is I cannot get the class working on the
>> remote
>> host I am working on. I am back to using mail() but need to drop in
>> script
>> that checks my fields $fname, $sname, $email, $subject, $message.
> 
> Checking for a NEWLINE in all but $message will stop MOST of the email
> injection.
> 
> if (preg_match("/\r\n/", array($fname, $sname, $email, $subject))){
>   die("Spammer!");
> }
> 
> I think preg_match allows array for 2nd arg...
> 
> Details.

Hi,

Shouldn't this be 

preg_match("/[\r\n]/", ...

considering this is OS specific and on Unix/Linux just a newline would do,
too? Most likely, on a Mac server, just \r would do as a header separator.
The MTA on the system will interpret the OS specific line endings,
and construct proper \r\n header separators before sending it out.

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to