To register for an Internet.com membership to receive newsletters and white papers, use the Register button ABOVE.
To participate in the message forums BELOW, click here
See this page, look at the top were the blue background turns to white (just after the curved white graphics on either side) - does it dip in about 10 px showing a blue square?. the bottom is also not aligned correctly. Its probably only noticable on (1024*768), IE 6 or something. but its just a wee tad annoying.
You will probably find that its the Ad banner thats throwing it off, just take it off (anf the ad at the side too) and all will be fine (joking).
When I look at some of the sites I did a few years ago (using strange browsers) they also have graphics aligned incorrectly. Its all in the aid of great fun.
Location: Rapid Offensive Unit "Foreign Object Damage"
Posts: 19,126
And I thought it was just me....
It's the table cells between the corners that are at fault - they're not entirely empty - they have spaces in them. And a space is as high as the rest font says it is. (Which is why the gap gets bigger as the font size goes up).
Hey, so I was bored. We're all supposed to be using CSS to do layout anyway
__________________
On two occasions I have been asked [by Members of Parliament], "Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out?" I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question.
good call subduck, a make-over would be ideal. You would think a site as active as this would be better designed. The forum is fine (as its out the box) but the rest is just a really scrappy.
I bet the PHP Builder Staff already know this and have been planning to update the design for sometime. Get the finger out lads, im sure there is plenty of users willing to lend a hand.
The site is going through a major overhaul. Once that's complete, I'd like to do a redesign.
I'll also try to find a Windows machine today and check the layout.
Here are a few of the next in lines, after I finish my current project:
1) a shell script to regexp the email addresses in the mail archive and replace them with <email protected> or similar.
2) a shell script which will email opt in users the day's threads from vB.
3) A script to tie the article comments in to vB (I started this but ran into a can of worms).
4) Clean out the code library.
5) Script a daily/weekly update to the manual. I have it pulling the cvs copy and building it, but that's too much for the machine, so I'm going to an rsync method. Both mean that I have to change quite a few links that are absolute.
If anyone is interested in any of the above, I'd be happy to create a 'praise' page with credits.
Originally posted by jstarkey I'm having a really hard time finding a windows machine at the moment. Could someone possibly send me a screenshot of the table problem?
Yea this is quite a pitty some forums i go to or just visit have like loads of designs. But this is like a very popular site. Quite Confusing. But other than that this is probably the best forum for the PHP addict
Location: Rapid Offensive Unit "Foreign Object Damage"
Posts: 19,126
Halfway. At least in Mozilla. In IE 5.5 it looks the way it should. In Mozilla, the upper corners are fine, but the lower corners look as they do in the attachment.
[Edit: I say this and a few seconds later they look fine. Maybe they were fixed while I was checking them out?]
__________________
On two occasions I have been asked [by Members of Parliament], "Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out?" I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question.
Ehh.. looked fine on IE untill I go to a new post screen were I get the same problem weedpacket mentions !!!. It seems to have wrapped the right banner down to under all the posts and created the 'not enough white squares effect' as per weebpackets picture.
Ooops. Forgot to get that page. Today's a holiday, I'm just being the usual geek and stopping by while checking my email. I'll fix that ASAP -- I promise it won't take as long this time
Originally posted by jstarkey 1) a shell script to regexp the email addresses in the mail archive and replace them with <email protected> or similar.
I am very very new to regular expressions... so I made a script with the way I know better. I am posting it here so any other of you guys interested you can just copy&paste it for yourselves.
ok... here we go..
this is a function looking for emails and changing them to the format someone (at) somewhere (dot) com
PHP Code:
function replaceEmails($inBody, $ATsign, $DOTsign) {
$outBody="";
$inBodyNextCopyIndex=0;
$inBodyLen=strlen($inBody);
$iAT=-1;
while(true){
if ($iAT+1>$inBodyLen-1) break;
$iAT=strpos($inBody, "@", $iAT+1);
if ($iAT===false) break;
else {
// look for the beginning
$i=$iAT-1;
while($i>=0 && strpos("._-abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789", substr($inBody, $i, 1))!==false) $i--;
$i++;
if ($i==$iAT) continue;
else {
if (substr($inBody, $i, 1)==".") continue;
else {
$iStart=$i;
// look for the ending
$i=$iAT+1;
$iDOT=-1;
while($i<$inBodyLen && strpos(".-abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789", substr($inBody, $i, 1))!==false){
if (substr($inBody, $i, 1)==".") $iDOT=$i; // look for the final dot
$i++;
}
$i--;
if ($i==$iAT) continue;
else {
if ($iDOT==-1) continue;
elseif (strpos("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ", substr($inBody, $i, 1))===false) continue; // the .com part should always end in a letter
else {
// success - extract+format good parts - continue loop
$outBody.=substr($inBody, $inBodyNextCopyIndex, $iStart-$inBodyNextCopyIndex)."[b]".substr($inBody, $iStart, $iAT-$iStart)." ".$ATsign." ".substr($inBody, $iAT+1, $iDOT-$iAT-1)." ".$DOTsign." ".substr($inBody, $iDOT+1, $i-$iDOT);
$inBodyNextCopyIndex=$i+1;
$iAT=$i;
continue;
}
}
}
}
}
}
return $outBody;
}
now... I also made a transpose of this to include support for the tags vBulleting is using:
PHP Code:
function replaceEmailsIgnoreTags($inBody, $ATsign, $DOTsign) {
$outBody="";
$inBodyLower=strtolower($inBody);
$inBodyNextCopyIndex=0;
$inBodyLen=strlen($inBody);
$iAT=-1;
while(true){
if ($iAT+1>$inBodyLen-1) break;
$previous_iAT=$iAT;
// find which occurrence comes first (2147483647 is the max signed integer number)
$iAT=strpos($inBodyLower, "@", $previous_iAT+1); if ($iAT===false) $iAT=2147483647;
$iQuote=strpos($inBodyLower, "[quote]", $previous_iAT+1); if ($iQuote===false) $iQuote=2147483647;
$iPhp=strpos($inBodyLower, "[php]", $previous_iAT+1); if ($iPhp===false) $iPhp=2147483647;
$iMin=min($iAT, $iQuote, $iPhp);
if ($iMin==2147483647) {
$outBody.=substr($inBody, $inBodyNextCopyIndex, $inBodyLen-$inBodyNextCopyIndex);
break;
}
elseif ($iMin==$iAT) {
// look for the beginning
$i=$iAT-1;
while($i>=0 && strpos("._-abcdefghijklmnopqrstuvwxyz0123456789", substr($inBodyLower, $i, 1))!==false) $i--;
$i++;
if ($i==$iAT) continue;
else {
if (substr($inBody, $i, 1)==".") continue;
else {
$iStart=$i;
// look for the ending
$i=$iAT+1;
$iDOT=-1;
while($i<$inBodyLen && strpos(".-abcdefghijklmnopqrstuvwxyz0123456789", substr($inBodyLower, $i, 1))!==false){
if (substr($inBody, $i, 1)==".") $iDOT=$i; // look for the final dot
$i++;
}
$i--;
if ($i==$iAT) continue;
else {
if ($iDOT==-1) continue;
elseif (strpos("abcdefghijklmnopqrstuvwxyz", substr($inBodyLower, $i, 1))===false) continue; // the .com part should always end in a letter
else {
// success - extract+format good parts - continue loop
$outBody.=substr($inBody, $inBodyNextCopyIndex, $iStart-$inBodyNextCopyIndex)."[b]".substr($inBody, $iStart, $iAT-$iStart)." ".$ATsign." ".substr($inBody, $iAT+1, $iDOT-$iAT-1)." ".$DOTsign." ".substr($inBody, $iDOT+1, $i-$iDOT)."[/b]";
$inBodyNextCopyIndex=$i+1;
$iAT=$i;
}
}
}
}
}
else {
if ($iMin==$iQuote) $st="
[/quote]
PHP Code:
";
elseif ($iMin==$iPhp) $st="
";
else die("young"); // this should never happen
$i=strpos($inBodyLower, $st);
$len=strlen($st);
if ($i===false) {
// did not find closing tag ... returning rest of text as is
$outBody.=substr($inBody, $inBodyNextCopyIndex, $inBodyLen-$inBodyNextCopyIndex);
break;
} else {
// return text until the closing tab as is. continue computations with the rest
$outBody.=substr($inBody, $inBodyNextCopyIndex, $i-$inBodyNextCopyIndex+$len);
$inBodyNextCopyIndex=$i+$len;
$iAT=$i+$len-1;
}
}
}
return $outBody;
}
[/php]
I haven't given it much testing yet... but I usually make only typing errors
when I apply this little test:
PHP Code:
$st="this is just [quote] a [email]b@c.com[/email] sample\r\ntext to see [/quote]how good\r\ni have [email]_alex@some.where.gr[/email] become during the last [email]34j@php.net[/email]\r\n year in php progr@mming";
echo "<p>".nl2br(htmlspecialchars(replaceEmailsIgnoreTags($st, "(at)", "(dot)")))."</p>\n";