[TYPO3-german] Fluid/Extbase: Wie kann ein Benutzer ein Bild hochladen?
Jost Baron
Jost.Baron at gmx.de
Fri Jul 20 09:55:55 CEST 2012
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi Robert,
Hast du mal probiert, das Array
$_FILE['tx_psa_user_psapsadatamanager'] nach dem Upload an Fluid zu
übergeben und mit f:debug auszugeben? Da kriegt man eine ziemlich gute
Debug-Ausgabe, vielleicht findest du dort den Grund.
Un ein Schuss ins Blaue: Was passiert, wenn du im Fluid-Template statt
name="filename" den Wert property="filename" setzt? Dann müssten die
Daten über
$_FILES['tx_psa_user_psapsadatamanager']['name']['userFileUploadForm']['filename']
erreichbar sein.
Gruß Jost
On 07/19/2012 03:59 PM, Robert Schneider wrote:
> 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:
> 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
>>>
>>
>>
>
>>>>>
>
> _______________________________________________ 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/
iQIcBAEBAgAGBQJQCQ8GAAoJEG6HPMAgWtVzaR4P+wV6oMmjdrL0Xb2ZbRxPArmx
pHsF1/2Lo8OppgXLWLy8LmCx5mxnr27uWcs4Z1lBlCJfhi4q7jk8hVOumxFTYBAd
HNkNw9pO8GE872jLQT3JSdP+9sUfhciPzBUGA+CzXGLVSNwJDoeNxHAUUMln4tMB
RTeWGo/+6z1284mtxeyYCtTAP6DzGoEPFQW92RdHAzIeJM7SZWzW4ZPdINDOqA4q
kec4zv6qHZb7WdPnyMRLdIMQmAiYFG7ui9liHV5+Yo31LRdrQTwhtqP6IKrlEb5M
zfcaO5xDegaFZPlRbaU9oMgiNPlrjg77EhEGZB95BBxrfMKyLkQiLqFO6T/TYENp
DoPN6+JxkOn9BqPWeFl59ksNPANYQbXzF3+3rZGsduRJr3qmza0gelmJGl4u9Us6
T48/A4XokOSjciDP6cBBnee2lC2eUy2mQ0m3bKA7jXsdITTuqQh2KaSRd9WFxWSv
ymbBLdn4QjFOYTF68kJFEj/+3oTVuo035UyvVM6bWultJQdq9fUM6E83varGq24B
c3PCUKsSxu8i8Xbl3nk3lM5JM1axfxBQcmxaK/slMTPHS0RIzjAwET6EnITgMAT6
4LxzipYXcFnNWysb+mk4NPhJ+6k1UmVeu0tbg0EuUfFEqQlUFfGQU7JFjw2m+qCj
STtYogkt4pexC7oVu0Eh
=WpNZ
-----END PGP SIGNATURE-----
More information about the TYPO3-german
mailing list