Hallo!
Könnte es sein, dass move_uploaded_file() nur in ein bestehendes Verzeichnis speichern und dieses bei Nichtexistenz nicht selbst anlegen kann?
Ja, genau das ist das Problem.
Abgesehen davon wäre ich vorsichtig damit Daten vom User ($_POST) ungefiltert an das Dateisystem oder eine Datenbank weiterzureichen. Siehe: http://de.php.net/manual/en/security.filesystem.php
http://de.php.net/manual/en/security.database.sql-injection.php
Und ja - auf keinen Fall copy() verwenden.
Außerdem würde ich an Stelle von
if (isset($_POST["abschicken_datei"])) {
folgendes verwenden:
if ($_FILES["datei"]['error'] == UPLOAD_ERR_OK)
verwenden. Vielleicht mal folgende Seite angucken:
http://de.php.net/manual/en/features.file-upload.php
Grüße
Andreas