The solution Shrike pointed me to works like this:
Put the following in the text/css section of the page head:
<style type="text/css">
#verticaltext {writing-mode: tb-rl; filter: flipv fliph;}
....blah blah whatever else...
</style>
When the php part of the script gets to the point of forming the table results drawn from the MySQL table, I call the verticaltext thingie as part of some <div> tags like so:
This creates the heading/top row of the result table and sets the fieldnames on their side...just like I wanted.
//the MYSQL_ASSOC gets field names instead of numbers. I've also added 3 extra columns at the left side of the table to hold the RecordID number and EDIT and DELETE buttons
while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
if ($row == 1) {
echo "\t<tr bgcolor=\"$row_color\"><th><div id=\"verticaltext\">Record ID</div></th><th><div id=\"verticaltext\">EDIT</div></th><th><div id=\"verticaltext\">DELETE</div></th>\n";
foreach ($line as $col_key => $col_value) {
echo "\t\t<th><div id=\"verticaltext\">$col_key</div></th>\n";
}
echo "\t</tr>\n";
}
It's a gorgeous, simple solution that requires a minimun of code. The only thing I have not figured out yet is how to get the column names to align to the bottom of the header cell. I should be able to puzzle that out eventually.
Thanks again, Shrike.