---
title: "Fileupload im Backend"
url: "https://www.typo3.net/d/85777-fileupload-im-backend"
source: "typo3.net"
tags: ["Extensions","Entwicklung","Frage"]
created: "2009-01-14"
last_reply: "2009-01-14"
replies: 5
solved: false
page: 1
pages: 1
lang: "de"
---

# Fileupload im Backend

Extensions › Entwicklung · 5 Antworten · gestartet 2009-01-14

## Eröffnungsbeitrag

**tomsen81** · 2009-01-14 · [Beitrag #1](https://www.typo3.net/d/85777-fileupload-im-backend/1)

Hallo zusammen,

nach einer ca. vierstündiger Recherche im Internet hab ich leider immer noch keine Lösung für mein - prinzipell recht einfaches - Problem gefunden:
Ein Datei-Upload in einer eigenen Extension (Web-Modul, nicht über TCA)!

Das Problem ist, dass ein ganz normales, selbstgebasteltes Formular im Backend anscheinend nicht auf den $_FILES Array zugreifen kann.
Hier mein Script, welches in einer anderen Testumgebung (außerhalb von Typo3) funktioniert:

```php
<form method="post" enctype="multipart/form-data">
<label for="name">Name:</label>
<input type="text" name="name" /> <br />
<label for="file">Filename:</label>
<input type="file" name="file" id="file" /> 
<br />
<input type="submit" name="submit" value="Submit" />
</form>
```

Hier kann ich wunderbar auf $_FILES zugreifen. Verwende ich diesen Code in der Extension, erscheint die Dateivariable im $_POST-Array und nicht, wie es sein sollte, in $_FILES.
Kennt jemand das Problem und weiß, wie es behoben werden kann?

Die zweite Methode war der Weg über TCEForm. Hier mein Code:

```php
$config['itemFormElName'] = 'pFile';
$config['itemFormElValue'] = $fileData ? $fileData : ' ';
$config['fieldConf']['config']['internal_type'] = 'file';
$config['fieldConf']['config']['allowed'] = 'PDF';
$config['fieldConf']['config']['disallowed'] = '';
$config['fieldConf']['config']['size'] = '1';
$config['fieldConf']['config']['show_thumbs'] = 0;
$config['fieldConf']['config']['uploadfolder'] = 'uploads/dev_intra/';

$form = t3lib_div::makeInstance('t3lib_TCEforms');
$form->initDefaultBEMode();
$form->backPath='../../../../typo3/';
     		
$this->content .= $this->doc->form = '<form method="post" name="editform">';
     		
$elements = $form->getSingleField_typeGroup('', '',array(), $config );
$this->content .=  $form->printNeededJSFunctions_top().$elements.$form->printNeededJSFunctions();
```

Hier war das Problem, dass sich der Browser zwar geöffnet hat, aber nachdem ich die gewünschte Datei ausgewählt hab, sie nicht wie erwartet im Select erschienen ist.
Was mir hier aufgefallen ist: die eingefügten JavaScripts waren beide hinter dem Formular, ganz egal, wie ich die Stringverknüpfung sortiert hab.

Wäre super, wenn mir hier jemand helfen könnte, da diese Datei-Geschichte das letzte Teil im Puzzle ist!

Vielen Dank vorab!
Tom

## Antworten

### [#2](https://www.typo3.net/d/85777-fileupload-im-backend/2) · meckpo · 2009-01-14

Hallo,

ja dieses Problem kann einen in den Wahnsinn treiben  8-)

Bei einem Modul ist standardmäßig bereits ein <FORM>-Tag geöffnet, danach wird erst dein Code eingefügt.

Kurz gesagt: Beginne deinen HTML-Code einfach mit einem SCHLIESSENDEN </form>.
Jaja, kannst du glauben. Ich mein das wirklich so.

### [#3](https://www.typo3.net/d/85777-fileupload-im-backend/3) · just2b · 2009-01-14

oder man löscht die betrffende zeile

georg

### [#4](https://www.typo3.net/d/85777-fileupload-im-backend/4) · tomsen81 · 2009-01-14

Das nenn ich ja mal eine promte Hilfe!
:-)
Habs gleich ausprobiert und es funktioniert (erste Variante)!

@just2b: könntest du mir bitte noch verraten, wo die betreffende Zeile drinsteht?

Auf jeden Fall habt ihr mir sehr geholfen!

Grüße
Tom

### [#5](https://www.typo3.net/d/85777-fileupload-im-backend/5) · just2b · 2009-01-14

such einfach nach form

georg

### [#6](https://www.typo3.net/d/85777-fileupload-im-backend/6) · tomsen81 · 2009-01-14

Alles klar, habs gefunden.
Dachte nicht, dass es in der gleichen Datei ist.

Danke!

---

Quelle: „Fileupload im Backend“, typo3.net, https://www.typo3.net/d/85777-fileupload-im-backend
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
