Problem mit Array oder String ?

TTek

Mitglied
Hi ich habe ein kleines Problem ich wollte ein Link basteln mit Hilfe des Tutorials "Klasse um Verzeichnisse zu listen"

PHP:
<?php
function showdir($dirlist,$recursive=false)
{

echo "<a href=\"adder.php?file=".$dirlist->name."\">".$dirlist->name."</a>";
echo '<ul>';
for ($x=0;$x<count($dirlist->subdirs);$x++)
    {
        if ($recursive==true)
            {
                showdir($dirlist->subdirs[$x],true);
            }
        else
            {
                echo '<li>[Sub-DIR] '.$dirlist->subdirs[$x]->name.'</li>';
            }
    }
echo '</ul>';
}

require("directorylist.class.php");
$dir=new directorylist(".",true);
showdir($dir,true);
?>

Am ende soll
HTML:
adder.php?file=xxx
stehen aber es kommt immer
HTML:
 adder.php?file=./xxx
raus.

Ich habe schon versucht über string replace das einfach raus zu löschen aber da es ja ein array ist scheint es nicht zu klappen :( Habt ihr eine Idde ?

Und dann noch eine Sache die für mich unlogisch ist

PHP:
$test = "Super Man";
echo "<h1><a href=\"test.php?pfad=" .$test. ">" .$test. "</a></h1>";

im 1. $test steht nur Super aber im 2. $test steht Super Man ! Warum ?
Kann man es so hin bekommen das auch im 1. $test Super Man steht ?
 
Zuletzt bearbeitet:
Zu deinem ersten Problem: ein „./“ ist gleichbedeutend zum aktuellen Verzeichnis. Ein „./foo/./bar“ ist also zu „foo/bar“ äquivalent.

Zu deinem zweiten Problem: der href-Attributwert muss auch korrekt in Anführungszeichen gesetzt werden.
 
Ist nicht "./" das übergeordnete Verzeichnis? Ich dächte das aktuelle Verzeichnis ist einfach nur "/", das übergeordnete "./" und das root-Verzeichnis "../"?
 
Das „/“ steht für das Wurzelverzeichnis, das „./“ für das aktuelle und das „../“ für das übergeordnete Verzeichnis:
Code:
aktueller URL: http://a/b/c/d

relativer Pfad   absoluter URL
----------------------------------
 g                http://a/b/c/g
 ./g              http://a/b/c/g
 g/               http://a/b/c/g/
 /g               http://a/g
 .                http://a/b/c/
 ./               http://a/b/c/
 ..               http://a/b/
 ../              http://a/b/
 ../g             http://a/b/g
 ../..            http://a/
 ../../           http://a/
 ../../g          http://a/g
Siehe dazu auch RFC 3986 – Uniform Resource Identifier (URI): Generic Syntax.
 
Zurück