Dateiupload funktioniert nicht
lima-city → Forum → lima-city Allgemein → lima-city Allgemein
apache
code
datei
datum
definieren
email
file
form
http
lokalen server
minute
monat
not
port
rand
sekunde
server
tag
type
url
-
Ich weiss, dass es schon 2 Threads zum Thema Upload gibt, aber ich habe einen neuen Thread erstellt, da das Problem bei mir etwas anders ist. Bei mir liegt es nicht an meinen tag/code">Code, da es auf einen lokalen Server funktioniert. Wenn ich immer eine Datei hochlade, kommt eine 413-Error Seite:
Request Entity Too Large
The requested resource
/upload.php
does not allow request data with POST requests, or the amount of data provided in the request exceeds the capacity limit.
Apache Server at deyavuz.com Port 80
Die Dateien, die ich hochlade, haben nicht nicht mal eine Größe von 100kb. Um eine Datei hochzuladen, verwende ich move_uploaded_file.
Selten kommt die Error-Seite nicht. Mein Script zeigt dann an, dass die Datei hochgeladen ist, was es dann aber nicht ist. Ein weiteres Problem ist, wenn die Error-Seite nicht kommt, dass der Server für ungefähr 1 Minute lahmt...
Hier trotzdem nochmal mein Upload Code:<?php $thisPage = "Filemanager"; include ("head.php"); ?> <div id="beitrag"> <div class="beitrag_header"> <h1>Upload</h1> </div> <?php if (isset($_POST["upload"]) && $_FILES["userfile"]["size"] > 0) { $fileName = $_FILES["userfile"]["name"]; $tmpName = $_FILES["userfile"]["tmp_name"]; $fileSize = $_FILES["userfile"]["size"]; $fileType = $_FILES["userfile"]["type"]; /*if ($_POST["status"] == "öffentlich") {*/ $random = rand(1,99999999); mkdir("d/" . $dsatz["EMail"] . "/" . $random, 777); move_uploaded_file($tmpName, "d/" . $dsatz["EMail"] . "/" . $random . "/" . $fileName); $datei = fopen("d/" . $dsatz["EMail"] . "/" . $random . "/index.txt","w"); fwrite($datei, " "); fclose($datei); // } /* $fp = fopen($tmpName, 'r'); $content = fread($fp, filesize($tmpName)); $content = addslashes($content); fclose($fp); if (!get_magic_quotes_gpc()) { $fileName = addslashes($fileName); } $id = rand(10000,99999); $query = "INSERT INTO `" . $dsatz["EMail"] . "` (id, Stunde, Minute, Sekunde, Tag, Monat, Jahr, filename, filetyp, filesize, file)". "VALUES ('$id','$id','$id','$id','$id','$id','$id', '$fileName', '$fileType','$fileSize','$content')"; mysql_query($query) or die("Error"); ini_set('mysql.connect_timeout', 300); ini_set('default_socket_timeout', 300);*/ echo "<div class=\"beitrag_beitrag\"><p>Datei wurde hochgeladen!</p><p><a href='e/" . $dsatz["EMail"] . "/" . $random . "'>Weiter</a></p></div>"; } else { ?> <?php } echo "</div>"; include("footer.php"); ?>
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Die Fehlermeldung klingt fast so, als ob dein Script zu lange abgearbeitet wird oder zu große Daten anfordert/sendet.
Siehe dazu hier! http://httpd.apache.org/docs/2.0/mod/core.html#limitrequestbody
(Am besten mal beim Hoster nachfragen wie Apache eingestellt ist!)
Falls die Anfrage zu lange dauert, lass das schreiben in das File weg und probiere es so nochmal!
Auch ist es wichtig, im HTML teil des Formulares das form-tag richtig zu definieren!
<form action='??LINK??' method='post' enctype='multipart/form-data'>
MFG Michael -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage