[TYPO3-german] Fluid/Extbase: Wie kann ein Benutzer ein Bild hochladen?

Robert Schneider r.schneider at artworx.at
Thu Jul 19 15:59:37 CEST 2012


Ich hoffe, mir kann nochmal wer helfen.

Mein Fluid-Template sieht so aus:

<f:form action="update"
         enctype="multipart/form-data"
         name="userFileUploadForm"
         method="post">
     <f:form.upload name="filename"/>
     <f:form.submit value="Start"/>
</f:form>


Und in der Action greife ich nun zum Debuggen mal so darauf zu:

t3lib_utility_Debug::debug(
$_FILES['tx_psa_user_psapsadatamanager']['name']['filename']);

Da sehe ich immerhin schon, dass der richtige Dateiname vorhanden ist. 
Auch die Größe der Datei kann ich mir ausgeben lassen. tmp_name macht 
aber Probleme:


t3lib_utility_Debug::debug(
$_FILES['tx_psa_user_psapsadatamanager']['tmp_name']['filename']);

lässt nicht einmal die Debugausgabe erscheinen. Wenn ich

t3lib_utility_Debug::debug(
array_keys($_FILES['tx_psa_user_psapsadatamanager']['tmp_name']));

mache, dann wird mir zwar der key 'filename:' angezeigt, aber irgendwie 
ist da nichts drin - NULL ist es aber auch nicht. print_r auf 
$_FILES['tx_psa_user_psapsadatamanager']['tmp_name'] erzeugt auch keine 
Debug-Ausgabe.

Was ist da los, was mache ich falsch?


Am 19.07.2012 11:58, schrieb Robert Schneider:
> Dank dir, Jost.
>
> Das mit dem Dateiverschieben, wird man wohl auch brauchen. Derzeit
> stecke ich aber schon am Controller und im Fluid fest. Wie muss das denn
> genau ausschauen? Braucht man da das object-Attribut im form-Element?
> Falls ja, muss ich das mit $this->view->assign mit etwas befüllen?
>
>  > Den Namen der Datei im temporären Verzeichnis findest du in der
> Variablen
>  > $_FILES['tx_extkey_pluginkey']['tmp_name'][...]['datei'],
>
> Meinst du mit'datei' den Namen, den ich in Fluid auch angebe? Kann es
> dann eigentlich Probleme geben, wenn das zwei Benutzer ungefähr
> gleichzeitig machen (was in meinem Fall nicht der Fall sein wird)?
>
> Gruß,
> Robert
>
>
> Am 19.07.2012 10:36, schrieb Jost Baron:
>> -----BEGIN PGP SIGNED MESSAGE-----
>> Hash: SHA1
>>
>> Hi Robert,
>>
>> an der Stelle ist es - meines Wissens nach - zuende mit der Magie von
>> extbase und fluid. Die Datei landet im temporären Verzeichnis, und
>> muss dann manuell von dort in das Upload-Verzeichnis kopiert werden.
>>
>> Den Namen der Datei im temporären Verzeichnis findest du in der Variablen
>> $_FILES['tx_extkey_pluginkey']['tmp_name'][...]['datei'],
>>
>> den Namen der hochgeladenen Datei in
>> $_FILES['tx_extkey_pluginkey']['name'][...]['datei']
>>
>> [...] steht dabei für den Pfad zu der property, die dem Upload-Feld
>> gegeben wurde. Wenn das Uploadfeld also z.B. Namen
>> tx_extkey[foo][bar][datei] hat, ist der Dateiname in
>>
>> $_FILES['tx_extkey_pluginkey']['tmp_name']['foo']['bar']['datei']
>>
>> drin. Mit den beiden Informationen kannst du dann die Datei dahin
>> verschieben wo du Lust hast, einen Service zu diesem Zweck (sicher
>> optimierbar) findest du hier:
>>
>> http://pastebin.com/kCRxj7du
>>
>>
>> Eventuell gibt es sowas aber auch schon in der community-Extension,
>> vielleicht lohnt sich auch ein Blick dort hinein.
>>
>> Gruß Jost
>>
>> On 07/19/2012 10:17 AM, Robert Schneider wrote:
>>> Hi! Dies ist mein erstes Posting in der Newsgroup. Bin gespannt,
>>> wie das hier mit der Hilfe klappt. Darauf bin ich noch sehr
>>> angewiesen.
>>>
>>> Also, mein Problem: Ich würde gerne einen Benutzer im Backend eine
>>> CSV-Datei hochladen lassen, die dann weiterverarbeitet werden soll.
>>> Aber wie schaffe ich das? Hat vielleicht wer ein einfaches aber
>>> vollständiges Beispiel dazu? Es zermürbt mich schon sehr, dass ich
>>> das nicht selbst herauffinden kann. Was ich unter
>>> http://typo3blogger.de/extbase-file-upload/ gefunden habe, hilft
>>> mir auch nicht so richtig weiter. Wo würden hochgeladene Dateien
>>> eigentlich landen - im uploads-Ordner?
>>>
>>> Kann mir wer helfen?
>>>
>>> Danke und Gruß, Robert
>>> _______________________________________________ TYPO3-german
>>> mailing list TYPO3-german at lists.typo3.org
>>> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
>> -----BEGIN PGP SIGNATURE-----
>> Version: GnuPG v1.4.11 (GNU/Linux)
>> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
>>
>> iQIcBAEBAgAGBQJQB8ceAAoJEG6HPMAgWtVz8aMQAIUKqnCWwsAFqgWVBu3dg4Uz
>> v6a4PXlcy9MP0+qNndfz5a6g1RoBCQLvRJjRjvVX1ICZBpUIZzgozu4OcHt99WPe
>> bMbNOZv7cjYeBAliyGQYBmKAKHa2xUIBsLWQAoSWANBI/yPcx7Elk7ZNbQKy/h7u
>> Vtoq7HRObSFZB+LMCGdEj6ZOFxG6Qu/M7lkcWO3EMO9r9aSkdTffXQdBncJiTQ8n
>> UXhgLlCA7MmcFbHOC1lCxIvsn0jjq5xe0VCrwdKkldxQehWWWrjIr5Vf1m2PTJU5
>> IFGg+BO/N7eozqIbweC7X7SpHO24vxR17Mxx84mtnNnCMTjr16z0YMYUPsbFiSN4
>> zTYyCwMuDz9gpPOgQ+rAv/p787ng59iNuBhvF5OK4orgWuyIMCoVsX4QJgDT0Cuu
>> MobYwIVHhnD47J1LhwMZDzOwFigTH8+iAmBN4nrSiL7FQH+ZOAzYzGGXNOpyFLH5
>> UO7unYtgYc+dEFxFlqJaT0OTlvxKtfXHe+BWChUeVkDxb/h+3m5bDZNo/BpPoz67
>> 2x+XflrGcKgNTAfcT1/mmKZMSoEP0WwXmlwQGx3odJfuqSsUO/cExgAzYzxRdSah
>> XQ2qcLAXAEe9TqCDXsI3n5bY1qi3TIyoD35TfaTfRiugn/Dpc6a6W+pkA4N3JqVx
>> EtbYujEi+hWbN+eTcWyz
>> =bFvS
>> -----END PGP SIGNATURE-----
>>
>
>




More information about the TYPO3-german mailing list