since it seems that you have more that one image to be displayed, i woud insert a counter and when it prints the first name / last name then increment the counter. do a check on the loop and if the counter >1 then show blanks or spaces (" ") instead.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>Adam Oriti - Bleeding Gold2</TITLE>
<META content=index,follow name=robots><LINK href="stylesheet.css" rel=stylesheet type=text/css>
<META content="text/html; charset=windows-1252" http-equiv=Content-Type>
<META content=en-au http-equiv=Content-Language>
</HEAD>
<BODY background="images/bg_secret_rose.gif"
bgColor=#000000 text=#c0c0c0>
<DIV align=center>
<TABLE border=0 cellPadding=5 cellSpacing=0 width="100%">
<TBODY>
<?
include ("config.php");
$query = "SELECT * FROM biography, artist WHERE biography.artist_id=artist.artist_id AND biography.artist_id=$id";
$result = mysql_query($query);
$i=1;
while($row = mysql_fetch_array($result)){
if ($i=1){
echo"<TR> <TD width="50%"> <P align=left><b><font color="#FFFFFF">$row['first_name'] $row['surname']</P></TD>
</TR>";
$i=$i+1;
}
echo "<TR> <TD width="100%"> <P align=left><a href="work_detail.php?id= $row['bio_id']<img src="images/ {$row['art_pic']} width="50" border="0"></a></P></TD>
</TR>";
}
?>
<TR>
<TD width="100%">
<FORM>
<INPUT onclick=history.back() type=button value="Back to last page">
</FORM>
</TD>
</TR>
</TBODY>
</TABLE>
hth