Ordnernamen auslesen

Also ich habe schon gegooglet aber jedoch hat mir nichts davon geholfen.

Undzwar habe ich ein ordner namens user und darin noch ein ordner namens westcoastplaya

der pfad wäre nun “/user/westcoastplaya/”

so in dem westcoastplaya ordner ist eine index.php

nun möchte ich mit der index immer den letzen ordner in dem falle “westcoastplaya” den namen auslesen da immer andere ordner dazu kommen kann ich nicht einfach westcoastplaya als ordnername in die index schreiben

Danke für eure Hilfe und Frohes neues noch

hi

$ref = $_SERVER['HTTP_REFERER']; $lala = explode("/", $ref); echo $lala['5'];

so müsste es ca klappen wenn die url
hljkhjk.de/user/w…/index.php ist

<span class="syntaxdefault">$path&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">explode</span><span class="syntaxkeyword">(</span><span class="syntaxstring">'/'</span><span class="syntaxkeyword">,&nbsp;</span><span class="syntaxstring">'/user/ordner/ordnerordner/ordnerordnerordner'</span><span class="syntaxkeyword">);<br /></span><span class="syntaxdefault">$directory&nbsp;</span><span class="syntaxkeyword">=&nbsp;(</span><span class="syntaxdefault">$directory&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">$path</span><span class="syntaxkeyword">[</span><span class="syntaxdefault">count</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$path</span><span class="syntaxkeyword">)&nbsp;-&nbsp;</span><span class="syntaxdefault">1</span><span class="syntaxkeyword">])&nbsp;==&nbsp;</span><span class="syntaxstring">''&nbsp;</span><span class="syntaxkeyword">?&nbsp;</span><span class="syntaxdefault">$path</span><span class="syntaxkeyword">[</span><span class="syntaxdefault">count</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$path</span><span class="syntaxkeyword">)&nbsp;-&nbsp;</span><span class="syntaxdefault">2</span><span class="syntaxkeyword">]&nbsp;:&nbsp;</span><span class="syntaxdefault">$directory</span><span class="syntaxkeyword">;&nbsp;</span><span class="syntaxdefault"></span> Wenn ich dich richtig verstanden habe…

@Ryon: Wieso Referer? Und wieso 5?

also ich würds ja ganz klar effizienter machen :smiley:

<?php // if PHP < 5.3.0 if(!defined('__DIR__')) define('__DIR__',dirname(__FILE__)); // the magic define('_THISDIR_',substr(__DIR__,strrpos(__DIR__,'/')+1)); // Output: header('Content-Type: text/plain'); echo 'Dir: '.__DIR__."\n"; echo 'Detected: '._THISDIR_; ?>natürlich dort entsprechend den Kram entfernen^^ So z.B. die Überprüfung ob DIR vorhanden ist oder net [size=85](da bplaced stets aktuell ist, daher aktuell PHP 5.3.3 läuft ists ja vorhanden)[/size]
u.U. auch THISDIR anders nennen… je kürzer desto besser.

Jedoch stehe ich nach wie vor zu dem was ich bereits in der PM sagte^^
Nenne uns doch bitte genau dein Vorhaben, mir kommts so vor als gänge dies eleganter wie z.B. via .htaccess und mod_rewrite.

Du hast doch vor “Suchmaschinen freundliche URLs” zu machen oder?
Statt:
http://domain.tld/index.php?site=home
http://domain.tld/?home.html
etc.
z.B.
http://domain.tld/home ?

Und wie bekommst du den letzten Ordnernamen? So hast du ja den ganzen Pfad.

Meine Fresse, natürlich - hab ich übersehen, sorry. Allerdings hast du immer noch ein Problem, wenn du als Pfad /eins/zwei/drei/ zurückbekommst.

wenn mann nur den befehl THISDIR als echo ausgibt hab ich was ich will und somit ist mein problem erfolgreich gelöst ich danke euch echt :slight_smile:

[quote=“thorr”][] Allerdings hast du immer noch ein Problem, wenn du als Pfad /eins/zwei/drei/ zurückbekommst.[/quote]theoretisch hättest du recht… nur wird das nie der Fall sein :wink:
dirname() spuckt das ganze ohne slash am Ende aus, genau wie DIR [size=85](was ja eben nur nen dirname(FILE) als Konstante ist, also schon “fertig”)[/size]

Trotz PHP < 5.3.0 Kompatibilität, ist das Script natürlich net perfekt, eg. für Windoof :stuck_out_tongue:
Unter Linux und vorausgesetzt PHP hält sich an deren Standard und ändert dies demnach auch nicht, sollte es immer funktionieren. [size=85](für Windoze eben den slash zu nem backslash machen bzw. da beides möglich ist eben relativ viel ändern^^)[/size]
Wobei ich die PHP < 5.3.0 Kompatibilität natürlich weglassen würd wenn ich eh PHP >= 5.3.0 hab :smiley:

Nen anderer Punkt wäre der Ansatz von Ryon_ der gar nicht schlecht ist. Denn bei mir ists der volle Path der genommen wird… wäre also im Root Verzeichnis des Webspaces z.B. dann “www” als Ausgabe statt “/” bzw. ""
Ich geh halt davon aus das es dort net genutzt wird :smiley:
Ansonsten nimmts halt dirname($_SERVER[‘REQUEST_URI’]) statt DIR wobei auch das Probleme geben könnte… weiß net ob ‘REQUEST_URI’ url encoded ist oder net…

HI

sorry … falsche variable benutzt … (hatte es nicht mehr im kopf und hab dann gesucht … aber zu oberflächlich)

wie ich auf 5 komm? so…

domain.tld/user/derwordner/index.php

1 => http:
2 => (nix)
3=> domain.tld
4=> user
5 => derwordner

Ach schei*e n array beginnt ja mit 0 … oh man … nächstes mal muss ich mir mehr zeit lassen … und genauer mitdenken…

lg flo

Wofür gibt es die Konstante DIRECTORY_SEPERATOR ? :wink:

Wofür gibt es die Konstante DIRECTORY_SEPERATOR ? :wink:[/quote]ok… an DIRECTORY_SEPARATOR [size=85](mit A net E :smiley:)[/size] hab ich net gedacht… ich guck eigl. immer nur nach den magic constants und nicht nach allen und versuch mein Glück :smiley: [size=85](wobei ich schon mal davon gehört hab)[/size]
Jedoch hiflt dies nach wie vor net :stuck_out_tongue: Denn Windoze kennt, wie schon gesagt, den slash als auch den backslash :wink: [size=85](ich nutze daher auch grundsätzlich “/” und als EOL “\n” da Windoof mit klar kommt… zumindest fast :smiley:)[/size]