Since you have no restriction on how long a subject can be,
I still suggest limiting it as I exampled before,
Code: Select all
if( strlen( $row[subject] ) > 20 ) { $row[subject] = left($row[subject], 20) . "..."; }
Have that before you print out the $row[subject].
What that does is that it checks if $row[subject] string character length is more than 20, then it picks only the first 20 letters and adds '...' after it.
For example,
Code: Select all
$row['subject'] = "HelloIamlongsubjectwrittenwithoutspacesthatwilleasilydestroyyourpagejustbecauseItrytobeononelineandyoucantdomuchaboutit";
echo strlen($row['subject']); // This will result 119.
if( strlen( $row['subject'] ) > 20 ) { $row['subject'] = left($row['subject'], 20) . "..."; }
echo $row['subject'] // This will result "HelloIamlongsubject..."
Of course set the '20' to suit your needs. As a suggestion on optimizing the value use, use the a char that has the most width, for example MWMWMWMWMW. to see how many is the maximum. Then remove some of it to keep it on the safe side.
Also keep in mind that if your subject would have some spaces in it, it would most likely start creating extra lines for the subject, not sure if that's what you want, but limiting the subject like this fixes that issue also.
And for the reaction, sorry for not being clear of my reasoning.

What I ment was that you can do the same formatting of centering by just using the tables. If you need more 'complex' coordination, add css to the table.
AND..
It seems that re :-colon is being transferred to %3A at some point, since the first Re: displays it correctly. Are you processing the Subject through $_GET?