Hi all,
ich würde gerne in einer Tabelle meiner Extension ein Feld haben, bei der ich Files auswählen kann (Analog TCA "group" -> "file").
Es soll jedoch nicht eine Kopie des Files in einen upload Ordner angelegt werden, sondern "nur" der Pfad zur Datei gespeichert werden.
Ich weiss, dass dies eigentlich nicht der "Philosophie" von Typo3 entspricht. Doch wir möchten das nunmal so haben, da beispielsweise auch grössere Filme so "verlinkt" werden und Änderungen gleich mehrere Orte betreffen!
Hier ist eine Beispieleinstellung:
<?
"movie" => Array (
"exclude" => 1,
"label" => "LLL:EXT:my_ext/locallang_db.xml:tx_myext_movies.movie",
"config" => Array (
"type" => "group",
"internal_type" => "file",
"allowed" => "flv",
"max_size" => 500000,
"uploadfolder" => "uploads/tx_myext",
"size" => 1,
"minitems" => 1,
"maxitems" => 1,
)
);
?>
Wie kann ich so etwas realisieren?
Danke für eure Antworten!
Habe die Lösung selbst gefunden!
Mittels:
"uploadfolder" => "",
Werden die Pfade zu den orginal Files abgespeichert...
Hi,
ist zwar ein altes Thema, aber ich habe das gleiche Problem.
Soweit funktioniert die Lösung für mich auch, aber im Backend habe ich bei der Auflistung von Datensätzen dann folgenden Fehler:
Warning: filemtime() [function.filemtime]: stat failed for /opt/lampp/htdocs/typo3_4.2.1//opt/lampp/htdocs/typo3_4.2.1/fileadmin/Testprojekt/Galerie/Bilderkategorie/Bild001.jpg in /opt/lampp/htdocs/typo3_4.2.1/t3lib/class.t3lib_befunc.php on line 1722
Gespeichert wird in der Datenbank der absolute Pfad zum Bild. Das Backend setzt dann allerdings nochmal den Pfad zur Typo3-Installation davor und dann passt es natürlich nicht mehr.
Ich vermute die Lösung die sopinon gefunden hat ist ein Workaround der in damals aktuellen Version funktioniert hat, in 4.2.1 nun aber zu Problemen führt.
Gibt es noch eine andere Möglichkeit? Ich kann definitiv keine Kopien der Dateien anlegen, da ich eine optional zusätzliche Information zu Bildern hinterlegen will.
Die Bilder lese ich aus /fileadmin/ aus und schaue dann ob zusätzliche Informationen zum Bild existieren, weshalb ich den Original-Bildpfad brauche und keine Kopie. Könnte das ganze per Eingabefeld lösen, möchte aber eigentlich nicht auf den Auswahldialog, sowie die Thumbnailfunktion verzichten.
Hallo, habe auch dieses Fehlermeldung. Hast du ein Workaround gefunden?
Hi,
nein leider nicht. #angry#
Ich habe die Thumbnail-Funktion abgeschaltet. So tritt der Fehler nicht auf. Eine einwandfreie Bearbeitung ist dadurch allerdings nicht gegeben.
Ohhh... Ich habe inzwischen einen Patch für den Typo3 Core geschrieben, welcher das Problem löst:
http://bugs.typo3.org/view.php?id=6039
Mit 6039_v6.diff steht ein neuer internal_type -> file_reference zur Verfügung. Thumbnails, einträge in Referenz Tabelle und Import/Export funktionieren mit diesem Patch.
Wird wahrscheinlich in Typo3 4.3 einfliessen.
Danke.
Ich werde das bei Gelegenheit mal testen.
Zur Info:
Der Patch unter http://bugs.typo3.org/view.php?id=6039 wurde in den Typo3 4.3 Core aufgenommen.
Das Feature wird also ab Typo3 4.3-beta1 zur Verfügung stehen (oder sofort im SVN).
.joe schrieb
Gespeichert wird in der Datenbank der absolute Pfad zum Bild.
Und wie machst du das? Ich habe nämlich das Problem, dass wenn ich über das group-Feld in meiner Extension eine Bilddatei auswähle, es mir nur den Dateinamen, aber nicht den relativen Pfad zu dieser Datei abspeichert. Wie muss ich das lösen?
Also ich lege via Typoscript den Haupt-Bilderordner fest:
z.B. fileadmin/meineBilder/
Dieser ist dann noch in weitere Unterordner unterteilt
z.B. fileadmin/meineBilder/ordner1/ und fileadmin/meineBilder/ordner2/
Und darin sind dann jeweils einzelne Bilddateien gespeichert.
Wenn ich im Backend meiner Extension nun in einen solchen Unterordner gehe, möchte ich, dass er mir nicht nur den Pfad "bildname.jpg" in der DB speichert, sondern eben "ordner1/bildname.jpg" oder von mir aus auch relativ zum Basisverzeichnis, also "fileadmin/meineBilder/ordner1/bildname.jpg".
Wie hast du das gelöst?
EDIT: Sorry, hat sich erledigt, hab erst jetzt Sopinon's Beitrag bzw. den Link dort kapiert ;-)