Jan H.: [Server] Dateiupload, grösse der Datei = Null

Hallo,
ich habe ein uploadscript welches local wunderbar funktioniert, leider tut es das online nicht.
Dateien ab ca. 8kb werden nicht gespeichert.

Die Information über die Dateigrösse bekomme ich aus:

$size = $HTTP_POST_FILES['datei']['size'];

Nun lasse ich mir $size ausgeben um den Fehler zu finden.
Ist die Datei 4kb gross, wird das auch angezeigt, ist die Datei 10kb gross wird die Dateigrösse mit Null angegeben.

Kennt irgendjemand das Problem?

Gruss, Jan aus Dresden

  1. Hallo Jan,

    Deine gewählte Überschrift ist schon richtig: Es kann am Server liegen, es kann auch an PHP liegen. Daher ist ohne weiteres an Informationen nicht feststellbar, wo hier der Fehler liegen könnte.

    Daher versuche ersteinmal statt auf $HTTP_POST_FILES direkt auf $_FILES zuzugreifen. Vermutlich wird es dadurch noch nicht zu einer Lösung kommen, daher wäre es hilfreich, wenn Du kurz darlegen könntest, ob es ein lokaler Server oder Webspace eines Hosters ist.

    Sonst könnte man Dir vieles an Konfigurationen anraten, was aber möglicherweise nicht Deiner Administration unterläge, und somit ins leere zielen würde.

    Gruß aus Berlin!
    eddi

    --
    Manchmal trifft es einen doch ganz unverhofft t86591:
    > '..."Vorläufig abgebrochen" ist ungefähr so sinnvoll formuliert, wie "einstweilig erschossen" oder "temporär verbrannt"...'
    Ich danke Sven für diese Erkenntnis - Gott, was habe ich gelacht ;)
    1. Hallo Eddi,

      Ich habe das Problem nach stundenlanger Suche gefunden und es liegt erstmal nicht direkt am Script.
      Die Speicherbelegung auf dem Server wo die Seite liegt ist voll , sagt mir meine Domainverwaltung , laut FTP Programm liegen da aber nicht mal ganz 1MB.

      Auch habe ich bei den Tests vieleicht gerade mal 3MB hochgeladen (ich sitze hier mit einem Analogmodem) und wieder gelöscht.
      Ich habe das Gefühl, dass da was im/mit dem temporären Verzeichnis "schiefläuft" welches scheinbar mit zum zur Verfügung stehenden Speicherplatz zählt.

      Jedenfalls habe ich dem Supportteam eine Mail geschickt damit sie sich dem Problem mal annehmen.

      Ich werde sehen.

      Danke für die Antwort.
      Gruss, Jan aus Dresden

    2. Hello,

      Daher versuche ersteinmal statt auf $HTTP_POST_FILES direkt auf $_FILES zuzugreifen.

      $_FILES ist das neue script-globale Array für die Uploads. Die $HTTP_*_++ sind in PHP5 zwar noch vorhanden, aber abgeschalet, da sie einfach redundant neben den neuen Arrays vorhanden waren. Da die Umstellung über eine ganze Version (4) gelaufen ist und auch in der nächsten (5) noch die Möglichkeit der Nachnutzung besteht, müssten die Programmierer da eigentlich langsam gemerkt haben.

      Um die Beschränkungen einzukreisen, schau Dir auch mal die phpinfo() an.
      Es gibt da einige Einstellungen, die Dich interessieren sollten:

      max_input_time 60 60
      memory_limit 8M 8M
      post_max_size 8M 8M
      upload_max_filesize 2M 2M

      Außerdem solltest Du feststellen, ob es nicht sogar am Browser liegt. Werden die Files denn mit der Methode POST und dem enctype="multipart/form-data" hochgeladen?

      Harzliche Grüße aus http://www.annerschbarrich.de

      Tom

      --
      Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
      Nur selber lernen macht schlau