Ankündigung

Einklappen
Keine Ankündigung bisher.

Datei Upload mit PHP - Probleme

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Gast-Avatar
    Ein Gast erstellte das Thema Datei Upload mit PHP - Probleme.

    Datei Upload mit PHP - Probleme

    Hi!

    Bei mir läuft XAMPP für Windows Version 1.4.2.
    Habe in den letzten Wochen ein PHP-Projekt realisiert, was auch wunderbar funktioniert. Es enhält unter anderem einen Datei-Upload.

    Die Datei wird über ein Formular geschickt:
    <form enctype="multipart/form-data" method="post" action="upload.php">
    <input type="file" name="form_file">

    Und ein PHP-Skript kopiert das ganze dann ins richtige Verzeichnis:
    $upload = "$form_file_name";
    copy ($form_file, "files/".$upload);


    Doch bei langsamen Verbindungen (z.B über ISDN) macht dieser Vorgang Probleme.

    Bei einer 600 KB Datei kommt nach ca. 1 Minute diese Fehlermeldung:
    "Fatal error: Maximum execution time of 1200 seconds exceeded"

    Bei einer 2 MB Datei kommt die Meldung nach ca. 3 Minuten.

    Was kann das sein? Und warum passiert das je nach Dateigröße zu einem anderen Zeitpunkt?
    Ich habe in der php.ini den Wert auch schon mal auf 30000 bzw. 0 gestellt, keine Änderung.
    Aber eigentlich macht das ja auch keinen Sinn, da 1200 Sekunden (=20 Minuten) hoch genug sein müssten.

    Bin für jede Hilfe dankbar.
    Gruß FunnyDee

  • Gast-Avatar
    Ein Gast antwortete
    Habe noch weiter bei Google gegraben und dann einen Link zu php.net gefunden. Leider steht dieser Tip auch nur in der englischen Fassung, deshalb habe ich ihn am Anfang auch nicht gefunden.

    Hätte eigentlich gedacht, dass in der englischen und deutschen Fassung die gleichen Sachen stehen. Ist aber scheinbar nicht so. Also schon wieder was gelernt

    Hier ist der direkte Link zu dem Tip:
    http://de3.php.net/manual/en/feature...n-pitfalls.php

    Gruß FunnyDee

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Zitat von funnydee
    Man muss den Wert "max_input_time" höher setzen, dann klappt es. Naja, wieder was gelernt.
    Ich dann auch. Wo haste denn die Variable ausgegraben? Die steht noch nich ma im angelsächsischen Handbuch drinne...

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    JUHUUU ICH HAB'S

    Man muss den Wert "max_input_time" höher setzen, dann klappt es.
    Naja, wieder was gelernt.

    Aber vielen Dank für die zahlreichen Vorschläge!

    FunnyDee


    - C L O S E D -

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Zitat von funnydee
    An upload_max_filesize und post_max_size liegt es nicht, die stehen auf 20 MB.
    Außerdem funktionieren größere Dateien, wenn die Verbindung schnell ist. Ich habe so schon eine 10 MB Datei hochgeladen (über LAN). Und wenn ich beide ISDN Kanäle nehme, klappt auch die 600 KB Datei. Sehr merkwürdig also.....
    In der Tat... Mich irritieren die "1200 sec." (20 Min) etwas, weil Du einen anderen Wert genannt hattest.

    Ich würde mal sagen, die Fehlermeldung ist absolut unsinnig. Ein Bug von PHP? Oder muss ich bei Apache suchen?
    Uff, ich kenne mich mit den Windows Versionen sehr wenig aus.

    Da es aber im LAN Klappt und per ISDN nicht, möchte ich doch mal ganz kühn die Schuld auf die "Wartezeit" schieben.

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    An upload_max_filesize und post_max_size liegt es nicht, die stehen auf 20 MB.
    Außerdem funktionieren größere Dateien, wenn die Verbindung schnell ist. Ich habe so schon eine 10 MB Datei hochgeladen (über LAN). Und wenn ich beide ISDN Kanäle nehme, klappt auch die 600 KB Datei. Sehr merkwürdig also.....

    Und ich benutze auch keinen Webspace beim Provider, der Server steht bei mir, sonst könnte ich ja gar nicht die php.ini ändern *g*

    Ich würde mal sagen, die Fehlermeldung ist absolut unsinnig. Ein Bug von PHP? Oder muss ich bei Apache suchen?

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Ich meine Downloads von mehreren 100 KBs

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Re: Datei Upload mit PHP - Probleme

    Zitat von funnydee
    Doch bei langsamen Verbindungen (z.B über ISDN) macht dieser Vorgang Probleme.

    Bei einer 600 KB Datei kommt nach ca. 1 Minute diese Fehlermeldung:
    "Fatal error: Maximum execution time of 1200 seconds exceeded"

    Bei einer 2 MB Datei kommt die Meldung nach ca. 3 Minuten.
    Setz in der php.ini
    max_execution_time
    auf einen höheren Wert oder füge am Scriptanfang folgendes ein:
    Code:
    set_time_limit (300); # 5 Minuten
    2 MB könnte allerdings schon an folgenden Grenzen scheitern (Zielserver):
    "post_max_size
    Setzt die maximal erlaubte Größe von POST-Daten. Diese Option betrifft auch den Datei-Upload. Um größere Dateien hochzuladen, muss der Wert größer sein als upload_max_filesize."

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Zitat von TheProgrammer
    Bei welchem Provider bist du denn? Manche erlauben Up- und Downloads nicht.
    Was will ich mit nem Webspace der keine Downloads kann? Ich mach Tausende Downloads am Tag. Jeder Seitenabruf ist ein Download!

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Bei welchem Provider bist du denn? Manche erlauben Up- und Downloads nicht.

    Einen Kommentar schreiben:


  • Ashergul
    antwortet
    hm ja klar hab move gemeint+g+ sorry mein fehler...
    hmm check mal ob du so große dateien über haupt hoch laden darfst.

    steht bei phpinfo unter upload_max_filesize

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Hi!

    Leider produziert deine Code-Zeile genau die gleiche Fehlermeldung. Habe move_uploaded_file genommen, ich hoffe das meintest du.

    An falschen Vars kann es auch nicht liegen, denn bei einer schnellen Verbindung bzw. einer kleineren Datei klappt es ja.

    Also......hat noch irgendwer Vorschläge?

    Gruß FunnyDee

    Einen Kommentar schreiben:


  • Ashergul
    antwortet
    versuch das kopieren mal mit dem befehl:

    Code:
    copy_uploaded_file($_FILES['form_file']['tmp_name'],"./files/" . $_FILES['form_file']['name']);
    mit den alten vars kenn ich mich leider nicht mehr wirklich aus, glaub aer dass da die sourcefile falsch angegeben ist...

    Einen Kommentar schreiben:

Lädt...
X