Ordner auswählen, darin enthaltene Dateien auslesen

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Ordner auswählen, darin enthaltene Dateien auslesen

    Hallo Ihr Herrscher über Bit und Byte,

    ich überlege gerade wie ich das Auswählen eines bestimmten Ordners unter Windows und das einlesen der darin enthaltenen Dateien am Besten realisiere, woraufhin eine zweite Auswahl stattfinden soll, die letztendlich den kompletten Pfad zur eigentlichen Datei an weitere Scripte übergibt.

    Also nochmal:

    - Auswahl des Ordners auf der Festplatte
    - Einlesen des Ordnerinhalts
    - Erzeugung eines Drop-Down-Menüs, in dem der Ordner-Inhalt aufgelistet wird
    - Auswahl einer bestimmten Datei aus dem Ordner-Inhalt
    - Pfadübergabe des komplette Pfades zu dieser Datei an weitere Scripte

    Erstmal: Würdet Ihr das auch so realisieren, oder gibt es da vielleicht eine elegantere Lösung?
    Um Rekursionen zu verstehen, muss man zuerst Rekursionen verstehen...
  • Hier vielleicht noch ein wenig Code zum auslesen des Ordner-Inhalts

    Quellcode

    1. $verzname = "c:\Programme\DB"; // hard-coded
    2. $dh = opendir( $verzname );
    3. echo "<form name=\"form1\" method=\"post\" action=\"$PHP_Self\">\n";
    4. echo "<select name=\"dbselect\"><option selected>Bitte Datenbank auswählen</option>";
    5. while ( gettype ( $datei = readdir ( $dh )) != "boolean" )
    6. {
    7. if ($datei != "." && $datei != "..") {
    8. print "<option value=\"$verzname/$datei\">$datei</option>";
    9. }
    10. }
    11. echo "</select>";
    12. echo " <input type=\"submit\" name=\"ok\" value=\"OK\">\n";
    13. echo "</form>\n";
    Alles anzeigen


    Wie man sieht ist der Ordnername noch hart implementiert. Weiß jemand von Euch, wie man eine Ordner auswählen und nur den Pfad zu diesem Ordner weitergeben kann? Ich finde dafür keine Lösung.
    Um Rekursionen zu verstehen, muss man zuerst Rekursionen verstehen...
  • ajax eröffnen in diesem fall mal wieder viele möglichkeiten ;)
    so kann man in den ordnern wechseln ohne eine seite neu zu laden

    erstmal hier ein verweis auf das coder Wiki (ohne ajax)
    :arrow: http://www.coder-wiki.de/HowTos/PHP-Ordner-auslesen

    insofern du eine ajax lösung anstrebst:
    einfach ins select ein

    Quellcode

    1. onChange="ajax(this.value)"
    machen.

    in der ajax funktion übergibst du dann einfach den pfad (als value muss natürlich der komplette pfad übergeben sein)

    Quellcode

    1. $verzname = $_GET['wunschVariable'];
  • "d0nUt" schrieb:

    ajax eröffnen in diesem fall mal wieder viele möglichkeiten ;)
    so kann man in den ordnern wechseln ohne eine seite neu zu laden



    Sorry, die Überlegung, dass der Ordner auf Seiten des Clients ausgelesen werden soll war falsch. Der Ordner muss auf der Server-Seite ausgelesen werden.

    Da bieten sich folgende Möglichkeiten:

    - Der Pfad zu den Datenbank-Dateien kann über die Registry ausgelesen werden
    - Der Anwender stellt den Pfad zur Datenbank-Datei auf dem Server per Hand ein, was natürlich voraussetze, dass der entsprechende Zugriff via Client auf die Ordnerstruktur des Servers möglich ist.

    1. Gibt es ein Workaround dafür, Registry-Daten auf der Serverseite per PHP auszulesen?

    2. Alternativ: Kann ein Client die Ordnerstruktur eines Servers einlesen??
    Um Rekursionen zu verstehen, muss man zuerst Rekursionen verstehen...