[TYPO3-german] FAL Upload im Frontend?
Hendrik Reimers (KERN23.de)
kontakt at kern23.de
Tue Jul 29 17:25:48 CEST 2014
Danke, aber leider benötige ich es mit FAL, da ich im TCA eine
FileReference habe.
Am 28.07.2014 16:23, schrieb Sascha:
> Habe einmal folgende Lösung gefunden: Nutzt aber kein FAL!
>
> in deinem Domain model wo das Bild zugeordnet sein soll:
>
> const UPLOAD_TARGET = 'fileadmin/userimages/';
>
> /**
> * Sets the userimage
> *
> * @param \array $userimage
> * @return void
> */
> public function setUserimage($userimage) {
> $date = new \DateTime();
>
> $basicFileFunctions =
> \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\CMS\Core\Utility\File\BasicFileUtility');
>
> $types = Array('image/png' => 'png', 'image/jpeg' => 'jpg',
> 'image/jpeg' => 'jpeg', 'image/gif' => 'gif');
>
> $fileName = $basicFileFunctions->getUniqueName(
>
> $basicFileFunctions->cleanFileName($date->getTimestamp().'_'.$userimage['name']),
>
>
> \TYPO3\CMS\Core\Utility\GeneralUtility::getFileAbsFileName(self::UPLOAD_TARGET)
>
> );
> if ($userimage['size'] <= 0) {
> $error = 'Upload fehlgeschlagen';
> } elseif( !array_key_exists($userimage['type'], $types) ) {
> $error = 'Das Bild hat ein ungültiges Format';
> } else {
> if ( \TYPO3\CMS\Core\Utility\GeneralUtility::upload_copy_move(
> $userimage['tmp_name'], $fileName) ) {
> $this->userimage = basename($fileName);
> }
> }
>
> }
>
>
> Dann kannst du im Formular das ganz einfach hochladen mit
> <f:form.upload property="daten.userimage" />
>
>
> Ist sicher nicht perfekt. Zum Beispiel zum error reporting etc.
> Aber vielleicht hilft es. Denke man kann das ganze sicher noch umbauen
> das es auch mit FAL funktioniert.
More information about the TYPO3-german
mailing list