Hochladen von Dateien

für die Liste aller Seiten

Autoren (Fortgeschritten)

PmWiki kann so konfiguriert werden, dass Autoren Dateien und Bilder auf den Server der PmWiki-Installation hochladen können. Auf solche hochgeladenen Dateien (auch "Anhänge") kann von allen Wikiseiten einfach verwiesen werden.

Hinweis: Bei PmWiki ist als Standard das Hochladen abgeschaltet. Siehe Verwaltung der Anhänge wegen weitere Informationen über die Aktivierung und Konfiguration des Hochladens.
Hinweis2: Das Hochladen kann so konfiguriert werden, dass hochgeladene Dateien für jede Seite in einem eigenen Verzeichnis gespeichert werden oder dass die Dateien für jede Gruppe in einem Verzeichnis landen oder dass für sämtliche Dateien ein gemeinsames (systemweites) Verzeichnis verwendet wird. Die Standardeinstellung ist, die hochgeladenen Dateien gruppenweise zu speichern. Siehe Verwaltung der Anhänge für Details.

Attach:-Syntax

Um einen Anhang zu einer Seite hinzuzufügen (hochzuladen) oder um auf einen vorhandenen Anhang zu verweisen, nutzt man die Formatierungsanweisung "Attach:" gefolgt von dem Namen der entsprechenden Datei -- also z. B. "Attach:Datei.pdf". Bei der Seitenansicht wird dies von PmWiki folgendermaßen umgewandelt:

  • Wenn eine solche Datei bereits hochgeladen wurde, wird ein Verweis auf die Datei angezeigt.
  • Wenn eine solche Datei noch nicht hochgeladen wurde, wird ein Verweis auf ein "Hochlade-Formular" angezeigt, über das der Autor die hochzuladende Datei auswählen kann.
  • Wenn es sich bei der Datei um eine Bilddatei handelt (wenn sie eine Dateiendung wie .gif, .jpeg oder .png hat), dann wird dieses Bild auf der Seite dargestellt.

Das Verhalten der automatisch erzeugten Verweise kann modifiziert werden:

  • Um zu verhindern, dass eine hochgeladene Bilddatei als Bild erscheint, setzen Sie sie in doppelte eckige Klammern (z. B. [[Attach:image.jpg]] erscheint als Attach:image.jpg).
  • Wenn ein Verweis auf einen Anhang ohne "Attach:" erscheinen soll, können Sie [[(Attach:)Datei.ext]] verwenden.
  • Sie können einen Tooltip zu einem Verweis anzeigen lassen (z. B. [[(Attach:)image.jpg"Tooltip für Dateianhang"]] erscheint als image.jpg).
  • Sie können einen geänderten Verweistext und einen Tooltip anzeigen lassen (z. B. [[Attach:image.jpg"Tooltip für Dateianhang" | alternativer Verweistext]] erscheint als alternativer Verweistext)

Anhänge anderer Seiten oder von Seiten anderer Gruppen

Wie ein Verweis auf Anhänge anderer Seiten geschrieben werden muss, ist unterschiedlich je nachdem, ob die PmWiki-Konfiguration seitenweise, gruppenweise oder systemweite Speicherung vorsieht.

  • Wenn PmWiki so konfiguriert ist, dass die hochgeladenen Dateien gruppenweise in gemeinsamen Verzeichnissen gespeichert werden, sieht ein Verweis auf den Anhang einer anderen Seite so aus:
    Attach:Datei.pdf für Seiten der selben Gruppe
    Attach:Gruppe/Datei.pdf für Seiten anderer Gruppen
  • Wenn PmWiki so konfiguriert ist, dass alle hochgeladenen Dateien in einem gemeinsamen Verzeichnis gespeichert werden, sieht ein Verweis auf den Anhang einer anderen Seite so aus:
    Attach:Datei.pdf
  • Wenn PmWiki so konfiguriert ist, dass für jede Seite ein eigenständiges Hochlade-Verzeichnis angelegt wird, sieht ein Verweis auf den Anhang einer anderen Seite so aus:
    Attach:Gruppe.SeitenName/Datei.pdf

Dateinamen mit Leerzeichen und/oder Sonderzeichen

Zuallererst: Am besten ist es, keine Leerzeichen oder Sonderzeichen in Dateinamen zu verwenden! Statt eines Leerzeichens sollte ein Unterstrich (_) verwendet werden.

Um auf eine Datei mit Leerzeichen im Dateinamen zu verweisen, sollte die Verweis-Form mit doppelten eckigen Klammern genutzt werden:

[[Attach:Eine Datei mit Leerzeichen im Dateinamen.txt]]

Um ein Bild mit Leerzeichen oder Sonderzeichen im Namen in eine Seite einzubinden, schützen Sie den Namen mit der Schreibweise Attach:[=image name.jpg=].

Internationale Zeichen in Dateinamen

Siehe UploadsAdmin und $UploadNameChars.

Liste der hochgeladenen Dateien für eine Seite

Um hochgeladene Dateien aufzulisten, können Sie die Direktive (:attachlist:) nutzen – siehe Seitendirektiven wegen weiterer Optionen.

Damit werden alle Anhänge der aktuellen Gruppe, der aktuellen Seite oder der gesamten Installation angezeigt -- je nachdem, ob Anhänge gruppenweise, seitenweise oder alle zusammen gespeichert werden. Für jeden Anhang wird ein Verweis zum Ansehen oder Herunterladen desselben angezeigt. Eine solche Liste der Anhänge wird auch als Teil des Hochlade-Forumlars angezeigt.

Formular für das Hochladen / Ersetzen von Anhängen

Man kann das Formular für das Hochladen auch direkt aufrufen, indem man "?action=upload" an die Internetadresse einer Seite anhängt, für die der Administrator des Wikis das Hochladen erlaubt hat.

Eine hochgeladene Datei kann einfach durch eine neue Version ersetzt werden, indem man die neue Datei unter dem selben Namen wie die alte hochlädt.

  • Man sollte sicherstellen, dass der Browser-Cache nach dem Ersetzen der hochgeladenen Datei geleert wird. Anderenfalls könnte es den Anschein haben, als wäre weiterhin die alte Version der Datei auf dem Server.
Hinweis für Administratoren: Wenn man den Eintrag $EnableUploadVersions=1; in local/config.php oder bspw. in einer Gruppen-Konfigurationsdatei einfügt, werden alte Versionen einer Datei nicht überschrieben, sondern nur umbenannt.

Hochladen-drop-zone

Wenn die config.php-Datei den Eintrag $EnableUploadDrop=1; enthält, wird eine "drop zone" über dem Bearbeiten- und dem Hochladenformular erscheinen. Benutzer mit Hochladenberechtigung können eine Datei aus einem Verzeichnis ihres Dateimanagers in diese "drop zone" ziehen und dort fallen lassen. Die Dateien werden dann eine nach der anderen hochgeladen, wenn ihre Größe und ihre Dateierweiterung akzeptiert werden.

Anders als in dem Hochladenformular gibt es dort kein "Optional anderer Name:"-Feld, die Dateien werden mit ihrem Originalnamen hochgeladen. Über die Akzeptanz hinaus könnten die Dateien dennoch umbenannt werden, um zu den vom Server erlaubten Zeichen zu passen.

Im Bearbeitenformular kann der Benutzer nach einem erfolgreichen Hochladen auf den Dateinamen klicken, um einen Verweis auf die Datei in den Textbereich einzufügen.

  • Klicken auf den Dateinamen wird einen Verweis wie Attach:NeueDatei.jpg einfügen.
  • Gedrückthalten der "Strg"-Taste beim Klicken führt zu einem Verweis wie Attach:Gruppe.aktuelleSeite/NeueDatei.jpg.
  • Wenn der Dateiname Leerzeichen enthält, wird der Verweis in eckige Klammern gesetzt wie in [[Attach:Name mit Leerzeichen.txt]].
  • Ein Mittelklick auf den Dateinamen öffnet die Datei für eine Vorschau in einem neuen Browser-Tab.

Typen und Größenbeschränkungen

Aus Sicherheitsgründen ist bei PmWiki das Hochladen bei der Erstinstallation abgeschaltet; Einmal eingeschaltet ist das Hochladen auf bestimmte Typen und Dateigrößen beschränkt (siehe Administration hochgeladener Dateien). Die Standardeinstellungen bei PmWiki sind Dateigrößen von 50 Kilobytes und Dateiendungen wie ".gif", ".jpg", ".doc", ".txt", und ".pdf". Zusätzlich kann der Administrator das System so konfigurieren, dass ein Passwort für das Hochladen erforderlich ist (siehe Passwörter und Administration der Passwörter).

Standardmäßig ist das Hochladen von Dateien nur mit den folgenden Endungen möglich.

KategorieDateiendung
Bilddateiengif, jpg, jpeg, png, bmp, ico, wmf, wbmp, xcf, webp, avif
Siehe Bilder für Dateien, die PmWiki automatisch als Bilder anzeigt.
Musik, Audiomp3, au, wav, ogg, flac, opus, m4a
Videoogv, mp4, webm, mpg, mpeg, mov, qt, avi, mkv
Archivezip, 7z, gz, tgz, rpm, hqx, sit
Officepdf, odt, ods, odp, odg, doc, docx, ppt, pptx, xls, xlsx, mdb, rtf, csv
Ausführbarexe
Adobepsd, ps, ai, eps
Textdateientxt, tex, dvi
Verschiedeneskml, kmz

|!! Löschen Derzeit können hochgeladene Dateien nur vom Administrator des Wikis gelöscht werden. Jeder Benutzer mit Rechten für das Hochladen kann allerdings bereits bestehende Dateien mit anderen Dateien gleichen Namens ersetzen, es sei denn, der Administrator hat eine Versionierung der Dateien eingestellt → Verwaltung der Anhänge.

Der Administrator kann hochgeladene Dateien löschen, indem er sie direkt auf dem Server löscht (über FTP oder SSH oder was auch immer der Provider zur Verfügung stellt). Möglicherweise funktionieren auch die (nur auf Englisch verfügbare) Kochbuch-Rezepte Cookbook:WebAdmin oder Cookbook:Attachtable, die innerhalb des Wikis einen Zugang zu den hochgeladenen Dateien ermöglichen.

FAQ

Wie kann ich es schaffen, dass der Verweis "Datei.pdf" lautet und nicht "Attach:Datei.pdf", wenn ich eine Datei hochlade?

Benutzen Sie Klammern — wie in [[(Attach:)Datei.pdf]]. Es gibt auch eine Konfigurations-Option, mit der sich der "Attach:-Teil" entfernen lässt — siehe dazu Cookbook:AttachLinks (nur auf Englisch verfügbar).

Warum kann ich auf mein neuinstalliertes Wiki keine Dateien hochladen, die größer sind als 50KB?

Die Standardeinstellung für die maximale Dateigröße hochzuladender Dateien ist 50KB. Fügen Sie die Zeile

$UploadMaxSize = 1000000; # begrenzt die Dateigröße von Anhängen auf 1 Megabyte

in Ihre local/config.php-Datei ein, um die Grenze beispielsweise auf 1 MB zu erhöhen. Siehe Verwaltung der Anhänge wegen weiterer Einstellungen und Begrenzungen. Anmerkung: Der Webserver und PHP begrenzen die Größe von hochzuladenden Dateien ebenfalls.

Wer beendet ganz überraschend mein Dateihochladen mit "Incomplete file received"?

Sie könnten nicht genug Platz in einem Bereich für Zwischenspeicherungen haben, der entweder von PmWiki oder von PHP benutzt wird. Auf *nix muss genug Platz in /tmp und /var/tmp sein.

Wie mache ich es, dass der Hochladenverweis einem weiterhin erlaubt, eine weitere Datei hochzuladen (falls jemand die alte Dateiversion durch eine neuere zu ersetzen wünscht)? Momentan bekommt man den Hochladenverweis nur, wenn nicht schon eine Datei in dem Hochladenverzeichnis ist.

Nutzen Sie die Anhängen-Seitenaktion und klicken Sie auf das Deltasymbol (Δ), das an jeder aufgelisteten Datei angezeigt wird. Wenn Sie die Anhängen-Aktion immer noch nicht sehen, sind entweder das Hochladen von Dateien nicht erlaubt, Sie nicht zum Hochladen berechtigt oder die Anhängen-Aktion ist auskommentiert oder fehlt.
Siehe auch Verfügbare Aktionen und werfen Sie einen Blick auf Test?action=upload.

Wie verhindere ich das Hochladen eines gewissen Dateityps?

Hier ist sind Beispiele, was in Ihrer local/config.php-Datei ergänzt werden muss, um Hochladen von .zip-Dateien oder Dateien ohne Dateierweiterung zu verhindern:

$UploadExtSize['zip'] = 0; # verhindert das Hochladen von .zip-Dateien.
$UploadExtSize[''] = 0; # verhindert das Hochladen von Dateien ohne Erweiterung

Wie vermeidet man Probleme mit non-ASCII-Zeichen in den Namen der Anhänge (z. B. "Zażółć geślą jaźń.doc")?

Fügen Sie in ihre local/config.php-Datei die folgende Zeile ein und modifizieren Sie sie für Ihre Bedürfnisse:

$UploadNameChars = "-\w. !=+#"; # erlaube Ausrufezeichen, Gleichheitszeichen, Plus und Doppelkreuz

Wie verberge ich dieses "Attach:" für alle Anhänge?

Siehe Cookbook:AttachLinks. Das funktioniert augenblicklich nicht für [[Attach:my file.ext]].

Wie kann ich Dateien hochladen, die vier-Zeichen-lange Dateierweiterungen haben wie beispielsweise 'abc.pptx'?

Siehe Cookbook:Upload Types.

Wie kann ich andere daran hindern, den URL meiner Bilder auf ihrer Site zu benutzen?

Siehe Cookbook:Prevent Hotlinking → Prevent hotlinking of uploaded files

Wie kann ich eine Datei anzeigen, der eine korrekte Dateiendung fehlt? (etwa, wenn ich Cookbook:LinkIcons benutze)

Eine Datei können Sie anzeigen, indem Sie eine "gefälschte" Dateiendung an den URL anhängen. Wenn z. B. der URL https://example.com/dox/mydoc lautet, fügen Sie einen fingierten Querystring mit der gewünschten Dateiendung an (z. B. https://example.com/dox/mydoc?format=.docx). Wenn Querystrings nicht geeignet sind, sollte es ein Bezeichnerfragment tun, z. B. https://example.com/dox/mydoc#.docx.

für die Liste aller Seiten


Übersetzung von PmWiki.Uploads,   Originalseite auf PmWikiDe.Uploads   —   Rückverweise

Zuletzt geändert:   PmWikiDe.Uploadsam 08.08.2024
 PmWiki.Uploadsam 07.08.2024