[php] FTP-Upload

Hegelbock

Ensign
Registriert
Nov. 2001
Beiträge
245
Hallo Leute,

ich habe mir ein kleines Script geschrieben, um per Browser eine Datei über FTP auf meinen Server zu laden. Doch irgendwie scheint ein Fehler drin zu sein.
Der Upload funktioniert super mit kleineren Dateien. Doch bei größeren Dateien (ca. 100kb), geht der Upload ewig, und dann sind nur 4 kb hochgeladen worden !?!? Und wenn ich eine noch größere Datei (ca. 5 mb) hochlade, dann kommt, sobald ich auf upload klicke, "Die Seite konnte nicht gefunden werden"
Mir ist das ein Rätsel warum das so ist.
Muss ich da irgendwas beachten. Ich lade die Dateien mit dem Befehl ftp_put hoch.
An was könnte das liegen??
Wäre um jede Hilfe dankbar.


Peace hegelbock
 
Poste doch mal deinen Code damit man mal durchsehen kann. Lässt du die Datei Binär uploaden ?
 
versuchs mal damit

PHP:
<?php

if($_POST['doupload']) {

if (is_uploaded_file($_FILES['upfile']['tmp_name'])) {
    copy($_FILES['upfile']['tmp_name'], "./uploads/".$_FILES['upfile']['name']);
$error .="<P><center><B><font face='Verdana'>Status</font></B></center></P>";
$error .= $_FILES['upfile']['name']."<br>";
$error .= $_FILES['upfile']['size']."<br>";
$error .= $_FILES['upfile']['type']."<br>"; 
#$error .= "Fehler :".$_FILES['upfile']['error']."<br>";;
$error .= "<b>Dateiupload Erfolgreich</b>";
} else {
$error .="<P><center><B><font face='Verdana'>Status</font></B></center></P>";
$error .= $_FILES['upfile']['name']."<br>";
#$error .= $_FILES['upfile']['size']."<br>";
#$error .= $_FILES['upfile']['type']."<br>"; 
if($_FILES['upfile']['error']==1)
$error .= "Fehler : Die hochgeladene Datei überschreitet die in der Anweisung upload_max_filesize in php.ini festgelegte Größe<br>";
if($_FILES['upfile']['error']==2)
$error .= "Fehler : Die hochgeladene Datei überschreitet die in dem HTML Formular mittels der Anweisung MAX_FILE_size angegebene maximale Dateigröße.<br>";
if($_FILES['upfile']['error']==3)
$error .= "Fehler : Die Datei wurde nur teilweise hochgeladen.<br>";
if($_FILES['upfile']['error']==4)
$error .= "Fehler : Es wurde keine Datei hochgeladen.<br>";
$error .= "<b>Dateiupload Fehlgeschlagen</b>";
}
}
?>

<html>
..
...


<form enctype="multipart/form-data" action="upload.php" method="POST">
<input type="hidden" name="MAX_FILE_size" value="8000000">
<? echo $error; ?> 
.
..

</html>
 
Zuletzt bearbeitet von einem Moderator: (Zur besseren Lesbarkeit bitte [PHP]-Tags benutzen!)
@#sb
Hab schon ASCII, und Binär probiert. Kein unterschied.

@darkjoker
ich würde die Datei gerne über FTP uploaden. Nicht per copy-Befehl.
 
Probier mal testhalber die Zeile "<input type="hidden" name="MAX_FILE_size" value="8000000">" rauszulassen und nur eine Zeile für das File einzubinden. Bei mir funzt der Upload mit Dateien >100kb.
 
@hegelbock: wenn du root-Zugriff auf den Server hast, dann logg dich via PuTTY ein und gehe zu:
1. cd /etc
2. vi php.ini

Da suchste dann den eintrag für die Maximale Dateigrösse mit der PHP-Dateien umgehen sollen und erhöhst die. Sollte so glaub ich gehn...
 
Setz mal die Maximum Script Execution Time hoch, ich glaub der wird nicht fertig mit dem größeren Upload und bricht dann ab.
 
@Rockhound

Es ist keine Beschränkung drin, hab den Anbieter gefragt.




@[UPS]Erazor

Wie mach ich das??
 
Mein Script läuft aber in Safe Mode, und dann hat diese Funktion keine Wirkung.
Aber ich glaub ehrlichgesagt nicht das es an dem liegt. Denn wenn ich z.B. eine 12MB große Datei uploade will, und klicke auf upload, kommt sofort Seite wird nicht gefunden. Das ist für mich verdammt fraglich warum das so ist!!!???

Und noch was, mit copy kann ich Dateien hochladen, die größer als 100 kb sind, (hab es mal mit 300 kb probiert, funzg) Doch wenn ich eine mit 1,5 mb oder so hochlade, dann kommt wieder "Die Seite wurde nicht gefunden"
Ich verstehe das nicht.
 
Zuletzt bearbeitet:
Haste ma ausprobiert obs eventuel am Internet Explorer liegt? Weil bei mir inner firma ham wir so nen webmail dingens und wenn dann leute versuchen da große PDFs hochzuladen sagt dann der IE goodbye :D
Wenn wir dafür bei uns ne lösung finden kann ich ma hier bescheid sage :)

greetings

Tim
 
Zurück
Oben