PHP does not effect the view for which each browser views the content.
PHP (at your instruction) builds up a stream of HTML and spits it out.
If IE subsequently cannot decipher that stream of HTML then that is your fault (or IEs fault )
So, to sort out what is wrong with your HTML stream you have some options:
1 View html source - PHP pumped that source out. Can you see badly nested <table> elements? That could be the problem, go back and edit the PHP which creates the source.
Remove ALL the <table> markup (and all the rest of the u, i tags etc) and then start replacing them one by one, at each iteration check the output in your target browser.
Create the table using STATIC html with a couple of test values, then, when you have aced that, replace those values with PHP echoed values.
ps Do you really have a table column called "Tube Color" containing a space??