ENGLISH VERSION |
|
Links | | | Forum | | | Kommentare | | | News melden |
Chat | | | Umfragen | | | Newsticker | | | Archiv |
amiga-news.de Forum > Programmierung > Index Liste | [ - Suche - Neue Beiträge - Registrieren - Login - ] |
-1- | [ - Beitrag schreiben - ] |
28.09.2003, 00:31 Uhr Roger Posts: 990 Nutzer |
Hallo Leute Habe mal wieder eine ganz dumme frage. Folgendes Problem beschäftigt mich: Ich habe ein paar Dateien auf meinem Webspace liegen, für die ich extra eine Index.html erzeugt habe wo diese Daten auch drin aufgeführt sind. So kann man die Daten dort sehen und auch gleich runterladen. Nun ist es aber so, das in verschiedenen Abständen neue Daten hinzukommen und ich diese mühsamm immer in dieser Datei einfügen muss damit die dann auch vorhanden sind. Nun gäbe es ja die Möglichkeit diese Dateien einfach in ein Verzeichniss zu laden und dann gar keine HTML Datei zu erstellen sondern einfach das Verzeichniss dann anzeigen lassen so in diesem Stil http://www.ahs-amiga.ch/pps/ dies hier wäre die html Seite dazu: http://www.ahs-amiga.ch/pps.html doch das ist dann auch nicht das wahre. Gibt es da eine andere schnelle und einfache Lösung? Danke für euere Ratschläge -- Die Schweizer Amiga Seite und Online-Shop: http://www.ahs-amiga.ch Das Schweizer Forum: http://www.ahs-amiga.ch/php/index.php Schweizer Amiga Club: http://club.ahs-amiga.ch Ein Besuch lohnt sich auf jeden Fall [ - Antworten - Zitieren - Direktlink - ] |
28.09.2003, 11:37 Uhr HAK Posts: 85 Nutzer |
@ Roger,Zitat: Naja, etwas einfacher sollte es schon möglich sein. Hier ein kleiner Denkanstoß, wie ich es - auf die schnelle - machen würde: Da sich bei deiner Indexseite immer nur der Mittelteil (der mit der Auflistung) ändert, würde ich als erstes meine Seite in drei Teile aufgliedern (z.B: index_kopf.txt; index_mitte.txt und index_fuss.txt) Danach würde ich mir eine Batchdatei schreiben, welche mittels "list", "sort" und "join" aus dem Inhalt des Directories welches sich immer ändert a) den aktuellen Mittelteil generiert b) diese Liste dann alphabetisch sortiert c) die drei Texte (Kopf; generierter Mittelteil; Fuß) zu der gewünschten HTML-Zeile zusammenfügt Die Batch-Datei würde - grob gesehen - so aussehen: --- cut here --- CD <Hauptdirectory> list pps lformat = "<p><a href='%s%s'>%c</a></p>" >ram:index_mitte_unsortiert.txt sort ram:index_mitte_unsortiert.txt ram:index_mitte.txt join <Pfad>index_kopf.txt ram:index_mitte.txt <Pfad>index_fuss.txt as index.html --- cut here --- "<Hauptdirectory>" ist hier das Directory in dem sich das "pps" Verzeichnis befindet (damit die Pfadangabe korrekt ist). "<Pfad>" ist der Pfad in dem du den fixen Kopf- und Fußteil gespeichert hast. Den Hauptteil der Arbeit erledigt die zweite Zeile (mit dem list Befehl). Hier wird mittels des lformat-Arguments die Zeilen aufgebaut. Das erste %s wird durch den Pfad ersetzt; das zweite %s durch den Filenamen und %c wird durch den Kommentar ersetzt. Die sort-Zeile brauche ich, da list AFAIK nicht nach Namen sortiert. Der einzige Unterschied zwischen unseren beiden Varianten ist, ist derjenige, daß in meiner die Namen im HREF-Verweis nur in einfachem Anführungszeichen "'" stehen; dies sollte aber AFAIK von HTML durchaus erlaubt sein. Wenn du das nicht magst, müßtest du dann entweder vor oder nach der join-Zeile noch eine einfügen, welche einen Editor aufruft und eben diese Anführungszeichen durch doppelte ersetzt. Wenn du jetzt neue Dateien bekommst, brauchst du diese nur mehr in das Verzeichnis kopieren, den Kommentar entsprechend deinen Wünschen zu setzen und die Batchdatei aufrufen damit eine neue Indexseite generiert wird. So, ich hoffe ich habe dich genug verwirr.. äh dir genug geholfen, damit du mit meinen Angaben etwas anfangen kannst. Bye HAK [ - Antworten - Zitieren - Direktlink - ] |
28.09.2003, 13:34 Uhr _PAB_ Posts: 3016 Nutzer |
Wenn Du PHP benutzen kannst, wäre das nicht so schwer. Da gibt es einige Beispiel-Skripte im Netz, einfach mal suchen nach "PHP directory listing". [ - Antworten - Zitieren - Direktlink - ] |
28.09.2003, 13:39 Uhr Roger Posts: 990 Nutzer |
Hallo zusammen Ich habe eure beiden Ideen gelesen und finde beide sehr gut. Da ich ja die nächste Woche mehr als genug Zeit zum üben habe, werde ich mich mal zu beiden Varianten hinsetzen. Die erstere klingt sicher komplizierter als es ist. Ich nehme mal an, das du mit diesen %s die ich durch die Pfade ersetzen soll, du den Internet Pfad meintest. Habe nämlich noch eine Email mit einem Hinweis bekommen, das dumme an dieser Version ist dann nur, das sich die Pfade immer auf meine Festplatte wo die Dateien liegen beziehen und nicht auf die Internetseite. Werde aber wie gesagt mal beides versuchen und dann die einfachere Variante nehmen. Danke schon jetzt für eure Hilfe -- Die Schweizer Amiga Seite und Online-Shop: http://www.ahs-amiga.ch Das Schweizer Forum: http://www.ahs-amiga.ch/php/index.php Schweizer Amiga Club: http://club.ahs-amiga.ch Ein Besuch lohnt sich auf jeden Fall [ - Antworten - Zitieren - Direktlink - ] |
28.09.2003, 16:53 Uhr Palgucker Posts: 1342 Nutzer |
Hallo Roger ich glaube, das dieses Problem hier schonmal angeschnitten wurde. Vielleicht hilft auch das weiter. mfG Palgucker [ - Antworten - Zitieren - Direktlink - ] |
29.09.2003, 01:10 Uhr HAK Posts: 85 Nutzer |
@ Roger,Zitat: Nein, da habe ich mich anscheinend nicht gut genug ausgedrückt. Wenn du "list" mit dem "lformat"-Argument benützt, kannst du diverse Platzhalter definieren. Die beiden %s in dieser Zeile werden automatisch vom list Befehl mit dem Pfad und dem Dateinamen ersetzt und %c wird mit dem jeweiligen Kommentar der Datei ersetzt. Nehmen wir einmal an, deine RAM sieht folgendermaßen aus:: RAM: +-Clipboards +-ENV +-PPS ...+-File1 (mit Kommentar "Name1") ...+-File2 (mit Kommentar "Name2") ...+-File3 (mit Kommentar "Name3") +-T Wenn mein aktuelles Directory RAM: ist, so bringt mir list pps lformat="%s%s---%c" folgendes Ergebnis: pps/File1---Name1 pps/File2---Name2 pps/File3---Name3 Wie du siehst wird das erste %s automatisch durch das "pps/"ersetzt; das zweite %s durch den jeweiligen Filenamen und das %c durch den jeweiligen Kommentar; alle übrigen Zeichen (in diesem Fall hier das "---") bleiben erhalten. Wichtig ist in diesem Fall daß wir zuerst in das Hauptverzeichnis (RAM: ) wechseln. Wenn wir dies nicht machen, müßten wird den list Befehl ja auch den vollständigen Pfad angeben wie z.B: list RAM:pps lformat="%s%s---%c" in diesem Fall wäre das Ergebnis aber RAM:pps/File1---Name1 RAM:pps/File2---Name2 RAM:pps/File3---Name3 Das war das, was ich in meinem ersten Posting mit "cd <Hauptverzeichnis>" gemeint habe, damit die Pfadangabe eben relativ ist und nicht absolut. Ach ja, da der list Befehl die Ausgabe nicht notwendigerweise alphabetisch sortiert, haben wir ja das Ergebnis in eine temporäre Datei hineingeschrieben, und diese dann mittels des Sort Befehles sortiert - wobei eine genauere Angabe nicht notwendig ist, da der Beginn jeder Zeile ja sowieso gleich ist. Ich würde dir mal vorschlagen einfach ein bißchen mit dem list Befehl und dem lformat Argument zu spielen, dann solltest du relativ schnell erkennen, welche Möglichkeiten er bietet (unter anderem gibt es auch noch Platzhalter für Dateiattribute, Länge etc...). Schau doch mal nach, ob du zufälligerweise das Amiga Benutzerhandbuch "AmigaDOS" bei dir herumliegen hast. Dort werden die Shell Befehle genauer beschrieben (waren bei mir z.B: bei meinem A4000 enthalten). So, ich hoffe, daß ich mich diesmal verständlicher ausgedrückt habe. Bye HAK [ Dieser Beitrag wurde von HAK am 29.09.2003 editiert. ] [ - Antworten - Zitieren - Direktlink - ] |
29.09.2003, 16:06 Uhr Roger Posts: 990 Nutzer |
Danke für all eure Antworten. Ich habe mir mehrere möglichkeiten angesehen. Für das PHP Script war ich wohl einfach zu dumm, denn ich habe es nicht zum laufen gebracht. Habe nun eine andere Version gewählt. Schaut es euch doch sonst mal an und sagt mir was ihr davon haltet http://www.ahs-amiga.ch/pps.html -- Die Schweizer Amiga Seite und Online-Shop: http://www.ahs-amiga.ch Das Schweizer Forum: http://www.ahs-amiga.ch/php/index.php Schweizer Amiga Club: http://club.ahs-amiga.ch Ein Besuch lohnt sich auf jeden Fall [ - Antworten - Zitieren - Direktlink - ] |
29.09.2003, 16:36 Uhr tokai Posts: 1071 Nutzer |
Hä? Geht's noch komplizierter? Wenn man PHP-Möglichkeit auf seinem Server hat, dann hat man meistens auch die Möglichkeit .htaccess Dateien anzulegen. Einfach folgende Zeile(n) in eine leere Datei kopieren und als .htaccess abspeichern. Dann im ascii-Modus auf den Server in's entsprechende Verzeichnis übertragen und fertig. Schaltet Verzeichnislisting ein: Options +Indexes Schaltet erweitertes Verzeichnislisting ein (mit Iconbildern etc.): IndexOptions +FancyIndexing Verhindert Anzeigen bestimmter Filetypen: IndexIgnore *.gif *.jpg regards, tokai -- this link sucks. [ Dieser Beitrag wurde von tokai am 29.09.2003 editiert. ] [ - Antworten - Zitieren - Direktlink - ] |
29.09.2003, 17:44 Uhr Holger Posts: 8116 Nutzer |
Zitat:Wer's noch schoener haben will, kann folgendes machen: code:Dann setzt der Server die Seite immer aus dem in HeaderName angegebenen Html-Anfang, der Dateiliste und dem in ReadmeName angegebenen Schluss zusammen.IndexOptions +FancyIndexing SuppressHTMLPreamble NameWidth=* DescriptionWidth=* HeaderName /Pfad zu html-Fragment ReadmeName /Pfad zu html-Fragment Damit ist schon so ziemlich alles moeglich. Der Header koennte z.B. so aussehen: code:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title>Meine Dateien - Download, etc.</title> <link rel="stylesheet" type="text/css" href="meinStyle.css"> </head> <body> <table><tr><td> <!-- Navigationsleiste hier --> </td> <td><!-- hier beginnt die Dateiliste --> und das Readme so: code:<!-- hier endet die Dateiliste --> </td></tr> <tr><td colspan="2">Copyright, etc bla bla <!-- link zur Hauptseite --> </td></tr> </table> </body> </html> mfg -- Good coders do not comment. What was hard to write should be hard to read too. [ Dieser Beitrag wurde von Holger am 29.09.2003 editiert. ] [ - Antworten - Zitieren - Direktlink - ] |
-1- | [ - Beitrag schreiben - ] |
amiga-news.de Forum > Programmierung > Index Liste | [ - Suche - Neue Beiträge - Registrieren - Login - ] |
Impressum |
Datenschutzerklärung |
Netiquette |
Werbung |
Kontakt
Copyright © 1998-2024 by amiga-news.de - alle Rechte vorbehalten. |