Hab mir einen relativ einfachen PHP Uploader aus dem Netz gezogen und ihn zuhause auf meinem Server installiert. Bin eigentlich auch ganz zu frieden. Kleine Bilder, Dokumente, etc. (Klein < ~2MB) klappen ohne Probleme. Falls ein Bild, etc. grösser als ca 2. MB wird, kommt eine Fehlermeldung, dabei ist es egal, ob es eine mp3 oder ein Bild ist.
Hier ist der Code, zur nähere erläuterung
Der Fehler kann meines Wissens nach nicht bei der Dateigrösse liegen. Ich habe 10 MB Extra mit einem Webumrechner in Bytes umgerechnet und dor eingetragen.
Dateiendungen sind dem Script eh egal.
Als Fehlermledung kommt dann
"Beim Hochladen der Datei ist ein Fehler aufgetreten."
siehe auf Script!
Was kann ich machen, bzw. wo liegt der Fehler? Ich kann eigentlich kein PHP - doch ein paar Abläufe kann ich noch aus anderen Sprachen erkennen!
Würde mich über eine Antwort freuen!
Hier ist der Code, zur nähere erläuterung
PHP:
<?php
$site_name = $_SERVER['HTTP_HOST'];
$url_dir = "http://www.consti-net.ipactive.de".$_SERVER[''].dirname($_SERVER['PHP_SELF']);
$url_this = "http://".$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];
$upload_dir = "files/";
$upload_url = $url_dir."/files/";
$message ="";
//create files directory if not exist
//If it does not work, create on your own and change permission.
if (!is_dir("files")) {
die ("Das Verzeichnis Files exisitiert nicht");
}
if ($_FILES['userfile']) {
$message = do_upload($upload_dir, $upload_url);
}
else {
$message = "Ungültige Datei ausgewählt.";
}
print $message;
function do_upload($upload_dir, $upload_url) {
$temp_name = $_FILES['userfile']['tmp_name'];
$file_name = $_FILES['userfile']['name'];
$file_type = $_FILES['userfile']['type'];
$file_size = $_FILES['userfile']['size'];
$result = $_FILES['userfile']['error'];
$file_url = $upload_url.$file_name;
$file_path = $upload_dir.$file_name;
//File Name Check
if ( $file_name =="") {
$message = "Ungültiger Dateiname";
return $message;
}
//File Size Check
else if ( $file_size > 10485760) {
$message = "Die Datei ist größer als 10 MB.";
return $message;
}
$result = move_uploaded_file($temp_name, $file_path);
$message = ($result)?"URL der Datei <a href=$file_url>$file_url</a>" :
"Beim Hochladen der Datei ist ein Fehler aufgetreten.";
return $message;
}
?>
<form name="upload" id="upload" ENCTYPE="multipart/form-data" method="post">
Datei hochladen <input type="file" id="userfile" name="userfile">
<input type="submit" name="upload" value="Datei Hochladen">
</form>
Der Fehler kann meines Wissens nach nicht bei der Dateigrösse liegen. Ich habe 10 MB Extra mit einem Webumrechner in Bytes umgerechnet und dor eingetragen.
Dateiendungen sind dem Script eh egal.
Als Fehlermledung kommt dann
"Beim Hochladen der Datei ist ein Fehler aufgetreten."
siehe auf Script!
Was kann ich machen, bzw. wo liegt der Fehler? Ich kann eigentlich kein PHP - doch ein paar Abläufe kann ich noch aus anderen Sprachen erkennen!
Würde mich über eine Antwort freuen!