Hello James,

"James Taylor" <[EMAIL PROTECTED]> wrote in message
[EMAIL PROTECTED]">news:[EMAIL PROTECTED]...
> I have a site where users can type whatever they want in and it posts it
to a
> database.  I'm trying to eliminate whatever types of abuse I can think of,
> and, since I'm using nl2br on the posts, I'm afraid a user might just hold
> down enter for a couple of seconds and scroll everything off the page. I'm
> trying to figure out a regex pattern that searches for say, more than 5
<br
> /> strings in a row, and anything after 5 gets stripped out.  Any ideas on
> how to possibly do this?

First of all, store all of your information in your database as it's
entered, and perform the regex and other string manipulation on the code
when you bring it out of the database.  That way, if you decide you could do
something better than you're currently doing later on, you have the "raw
data to deal with."

Anyway, now to your problem:

<?

$string = "lots of






























new

lines

















grrrrrrrrrrrrrr!";

// Change the 2 to whatever you want: if you want
// to limit to three new lines, change to 3 and add another
// \n (new line)
$string = preg_replace("/(\r?\n){2,}/", "\n\n", $string);

echo nl2br($string);

?>

Hope it helps.

James



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

Reply via email to