MSchnitzler2000: Links in PHP-Breadcrumb-Navigation

Ich habe mir auf Grundlage des Skripts
http://www.drweb.de/php/brotkrumen.shtml
folgende Breadcrumb-Navigation erstellt.

<?php
$an="Navigation: ";
$home="http://www.mschnitzler2000.de/";
$pie=explode("/","$_SERVER[PHP_SELF]");
$tr=" > ";
$b=count($pie);
echo $an."<a class="aktuell" href="".$home."">Hauptseite</a>";
for($a=1;$a<$b-1;$a++){
$ta=$ta.$pie[$a]."/";
echo $tr."<a class="aktuell" href="".$home.$ta."">".ucfirst($pie[$a])."</a>";}
$file=explode('.',ucfirst($pie[$b-1]));
$file=str_replace ("ae", "&auml;",$file);
$file=str_replace ("oe", "&ouml;",$file);
$file=str_replace ("ue", "&uuml;",$file);
$file=str_replace ("Ae", "&Auml;",$file);
$file=str_replace ("Oe", "&Ouml;",$file);
$file=str_replace ("Ue", "&Uuml;",$file);
$file=str_replace ("_", "&nbsp;",$file);
echo "<b>".$tr.$file[0]."</b>";
?>

Allerdings gibt es in der Ausgabe einen Fehler bei den Links, weil die Ordner in der URL mehrfach eingefügt werden, also z.B. www.mschnitzler2000.de/Ordner/Unterordner/Ordner/
Ich vermute, dass das Problem in der Zeile
$ta=$ta.$pie[$a]."/";
liegt, weil das $ta dort vor und nach dem = erscheint. Aber wenn ich das $ta hinter dem = lösche, wird nur der unterste Ordner eingefügt, also
www.mschnitzler2000.de/Unterordner
statt
www.mschnitzler2000.de/Ordner/Unterordner/

Wie komme ich an die richtigen Links?