Ho risolto in maniera piu semplice:
visto che lavoro con i db ogni pagina riceve un id della categoria . basta fare:

$arr[0]=$_GET["idcat"];
do
{
$s_s_id="SELECT * FROM tcategorie WHERE id=".$arr[(count($arr)-1)];
$r_s_id=mysql_query($s_s_id,$conn);
if(mysql_result($r_s_id,0,"id_cat")!=0)
$arr[count($arr)]=mysql_result($r_s_id,0,"id_cat");
}
while(mysql_result($r_s_id,0,"id_cat")!=0);
$count=count($arr);

do
{
$s_s_cat="SELECT titolo FROM tcategorie WHERE id=".$arr[($count-1)];
$r_s_cat=mysql_query($s_s_cat,$conn);
?>
<? echo mysql_result($r_s_cat,0,"titolo")?>
<?
if($count!=1)
echo">";
$count=$count-1;
}
while($count>0);

In pratica faccio la strada inversa....
Il codice è elementare e nn dovrebbe essere complicato capire come funziona