Funktionsbeschreibungen

Funktion „lmb_fileUpload()“

Geschätzte Lektüre: 5 Minuten

lmb_fileUpload

mixed lmb_fileUpload(array $file,numeric $level,array $relation=null, boolean $uploadfrom=false, array $dublicate=array(),boolen $verbose=false)

Funktion zum Upload einer oder mehrerer Dateieni ins DMS (./limbas_src/extra/explorer/filestructure.lib)

Zusammenfassung der Parameter:

  • Informationen der hochgeladenen Datei über das array $file
  • Zielordner
  • Verknüpfungsparamter
  • optionale Dateiquelle
  • Behandlung von Dublikaten

Parameter

$file

gültige Parameter einer hochgeladenen Datei

  • $file[„file“] – string : absoluter Pfad der hochgeladenen Datei
  • $file[„file_name“] : string -Name der Datei
  • $file[„file_type“] : string – MIMETYPE der Datei
  • $file[„file_archiv“] : boolean – true falls zip Archiv ausgepackt werden soll

$level

gültige Ordner ID in welche die Datei kopiert werden soll

$relation

Datensatz oder Datensätze zu welchem die Datei verknüpft werden soll. Es können Felder vom Typ Verknüpfung (field_type 11) sowie Upload (field_type 6) verwendet werden.

  • $relation[„gtabid“][0] : Tabellen ID
  • $relation[„fieldid“][0] : Feld ID
  • $relation[„datid“][0] : Datensatz ID

$uploadfrom

autorisiert ein upload aus unterschiedlichen Quellen ohne vorheriges HTTP Upload

  • 1 : import aus internem System
  • 2 : import aus einem lokalem Pfad
  • 3 : import aus externem Storage – ohne physikDublikatealische datei

$dublicate

behandelt das Vorgehen falls die Datei schon existiert. Die Dublikatsprüfung erfolgt über den Namen, den Ordner und falls vorhanden der Verknüpfung zu einem Datensatz.

Der Parameter „typ“ definiert wie Datei behandelt werden soll.

Der Parameter „subj“ kann optional einen Beschreibungstext bei Versionierung beinhalten.

Über den Parameter „existingFileID“ kann eine Datei ID übergeben werden welche als Duplikat gefunden wurde. In manchen Fällen möchte man selbst prüfen ob und welche Datei als Duplikat existiert und kann die systeminterne Duplikatsuche überschreiben. Dies ist unter anderem für die Erweiterungs Funktion „lmb_extendedFileUpload“ relevant.

  • $dublicate[„subj“] : version notice if versioning
  • $dublicate[„existingFileID“] : [numeric]
  • $dublicate[„typ“]  : overwrite, rename, versioning, skip, ignore
    • overwrite : Datei wird überschrieben, Name bleibt gleich
    • rename : Datei wird umbenannt in Kopie von
    • versioning : Datei wird versioniert, Name bleibt gleich
    • skip : Datei wird nicht hochgeladen oder erzeugt
    • ignore : Datei wird mit dem gleichen Namen gespeichert

$verbose

  • true : erzwingt eine detaillierte Ausgabe
  • false : die Funktion gibt nur die Datensatz ID der importieren Datei an

Rückgabewert

Array aus den verarbeiteten Dateiinformationen falls $verbose = true

  • $fl[„nextid“] : die vergebene Datensatznummer der Tabelle LDMB_FILES
  • $fl[„filesize“] : die Dateigröße
  • $fl[„filename“] : der endgültige Dateiname
  • $fl[„level“] : Die Ordner ID
  • $fl[‚mimetype_id‘] : die MimeType ID der Tabelle LMB_MIMETYPES
  • $fl[‚mimetype‘] : der MimeType
  • $fl[’secname‘] : der Physische Dateiname mit dem die Datei ins Dateisystem abgelegt wurde.
  • $fl[„md5“] : der MD5 Prüfschlüssel der Datei
  • $fl[„vpid“] : die Datensatz ID der referenz Datei falls die Datei versioniert wurde.

Erweiterung

Die Upload Funktion kann über die festgesetzte Funktion lmb_extendedFileUpload() umgeleitet werden. Dazu wird die Funktion lmb_extendedFileUpload() in einer Erweiterungsdatei benötigt. Ist diese vorhanden wird sie am Anfang des Uploadvorgangs ausgeführt. Sie kann TRUE oder FALSE zurückgeben. Bei TRUE wird die Datei entweder direkt verarbeitet oder die Parameter angepasst. Bei FALSE bricht der Uploadvorgang ab.

mixed lmb_extendedFileUpload(array &$file, numeric &$level, array &$relation, array &$dublicate)

Die Parameter können per Referenz direkt in der Funktion überschrieben werden.

Folgende Parameter werden unterstützt:

  • $file
  • $level
  • $relation
  • $dublicate

Beispiele

Share this Doc

Funktion „lmb_fileUpload()“

Or copy link

CONTENTS