Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 17

Thema: foreach-Schleife bricht nach einer gewissen Anzahl von Durchläufen ab

  1. #1
    Großmeister(in)
    Registriert seit
    18.01.2007
    Ort
    Hamburg
    Alter
    26
    Beiträge
    710
    Danke
    2
    Bekam 2 mal "Danke" in 2 Postings

    Standard foreach-Schleife bricht nach einer gewissen Anzahl von Durchläufen ab

    Moin moin,
    ich habe folgendes Problem:

    Ich wollte dieses Skript benutzen um kleine Foto-Galerien hochzuladen.

    PHP-Code:
    if(isset($_POST) and $_SERVER['REQUEST_METHOD'] == "POST"){                        foreach ($_FILES['files']['name'] as $f => $name) {                      if ($_FILES['files']['error'][$f] == 4) {            continue;         }                   if ($_FILES['files']['error'][$f] == 0) {                           if ($_FILES['files']['size'][$f] > $max_file_size) {                $message[] = "$name is too large!.";                continue;             }            elseif( ! in_array(pathinfo($namePATHINFO_EXTENSION), $valid_formats) ){                $message[] = "$name is not a valid format";                continue;             }            else{ // No error found! Move uploaded files                 if(move_uploaded_file($_FILES["files"]["tmp_name"][$f], $path.$name))                $count++;             }        }             } } 
    Nur sobald es mehr Fotos als ~20 werden, bricht es mit der Meldung
    Code:
    Notice: Undefined index: files in /mn... on line 60 
    Warning: Invalid argument supplied for foreach() in...
    Zeile 60 ist diese hier
    PHP-Code:
    foreach ($_FILES['files']['name'] as $f => $name) { 
    Wäre cool wenn mir da jemand helfen könnte.
    Achja, max_file_uploads hab ich schon hochgesetzt.

    Gruß,
    Dominik
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    Bandit
    Gast

    Standard AW: foreach-Schleife bricht nach einer gewissen Anzahl von Durchläufen ab

    Es wäre nicht schlecht, wenn wir das passende Formular dazu sehen würden. Und kontrolliere mal $_FILES mit
    PHP-Code:
    echo "<pre>\n";
    print_r($_FILES);
    echo 
    "</pre>\n"

  3. #3
    Großmeister(in)
    Themenstarter

    Registriert seit
    18.01.2007
    Ort
    Hamburg
    Alter
    26
    Beiträge
    710
    Danke
    2
    Bekam 2 mal "Danke" in 2 Postings

    Standard AW: foreach-Schleife bricht nach einer gewissen Anzahl von Durchläufen ab

    Moin,
    klar, hier das Formular
    HTML-Code:
    <form action="image_gallery.php?page=images&step=3&function=upload&gallery='.$_GET['gallery'].'" method="post" enctype="multipart/form-data">        
    <input type="file" id="file" name="files[]" multiple="multiple" accept="image/*" />        
    <input type="submit" value="Upload!" />
    </form>

  4. #4
    Prinz(essin)
    Registriert seit
    26.03.2013
    Beiträge
    835
    Danke
    20
    Bekam 76 mal "Danke" in 75 Postings

    Standard AW: foreach-Schleife bricht nach einer gewissen Anzahl von Durchläufen ab

    Zitat Zitat von Dominikgt Beitrag anzeigen
    Achja, max_file_uploads hab ich schon hochgesetzt.
    Dass nützt dir nicht viel, da du auch zwei Speicherbegrenzungen drin hast, eine pro Datei und dann insgesamt nochmal. Wird eine der Bedingungen überschritten geht es in die Hose.
    Wobei 20 Dateien schon echt viel sind wenn sie entsprechend gross sind.

    Anderes Thema ist die Scriptlaufzeit, die meist nach 30 Sekunden greift und das Script abbricht. Ob der Hoster da eine Änderung zulässt vermag ich nicht zu sagen, musst du ausprobieren.

  5. #5
    Großmeister(in)
    Themenstarter

    Registriert seit
    18.01.2007
    Ort
    Hamburg
    Alter
    26
    Beiträge
    710
    Danke
    2
    Bekam 2 mal "Danke" in 2 Postings

    Standard AW: foreach-Schleife bricht nach einer gewissen Anzahl von Durchläufen ab

    Ja stimmt! Das ist dann die max_execution_time nehm ich an. Bin mal gespannt, ob Strato mich das ändern lässt allerdings fällt mir gerade auf, dass das Skript schon durchaus länger als 30sek läuft.

  6. #6
    Meister(in) Avatar von lukasn
    Registriert seit
    23.02.2008
    Ort
    Schweiz
    Alter
    27
    Beiträge
    491
    Danke
    2
    Bekam 12 mal "Danke" in 11 Postings

    Standard AW: foreach-Schleife bricht nach einer gewissen Anzahl von Durchläufen ab

    Strato hat die max_execution_time meines Wissens nach auf 2 min festgelegt. Ob es sich ändern lässt weiss ich allerdings nicht.

    Gruss,
    -Lukas

  7. #7
    Prinz(essin)
    Registriert seit
    26.03.2013
    Beiträge
    835
    Danke
    20
    Bekam 76 mal "Danke" in 75 Postings

    Standard AW: foreach-Schleife bricht nach einer gewissen Anzahl von Durchläufen ab

    Geändert von explanator (24.01.2014 um 14:11 Uhr)

  8. #8
    Großmeister(in)
    Themenstarter

    Registriert seit
    18.01.2007
    Ort
    Hamburg
    Alter
    26
    Beiträge
    710
    Danke
    2
    Bekam 2 mal "Danke" in 2 Postings

    Standard AW: foreach-Schleife bricht nach einer gewissen Anzahl von Durchläufen ab

    Ja cool, also das Problem lag dann wohl an der max_execution_time. Die konnt ich hochsetzen und es kommt keine Fehlermeldung mehr! Danke schonmal! Nun kommt bloß ein anderes Problem. Und zwar wird nach dem hochladen das Verzeichnis gescannt und alle Bilder mit " | " getrennt in die Datenbank geschrieben. Nur das funktioniert bei mehr als ca. 20 Bildern auch nicht mehr. Gibt's vielleicht eine max. Länge, wie lang ein String in ner MySQL-Datenbank sein darf? Aussehen tut das da so: Bild1.jpg|Bild2.jpg|Bild_3.jpg|...usw.

    PHP-Code:

    $directory 
    $_GET['gallery'];            
    $alledateien scandir('../gallerie/'.$directory.'/');             
    $imagesForDb '';            
    foreach (
    $alledateien as $datei) {                    
       if(
    $datei != '.' && $datei != '..') {                       
         
    $dateien $datei."|"
       }                    

       
    $imagesForDb .= $dateien;            
    }; 
    $imagesForDb wird dann in die Datenbank geschrieben.

  9. #9
    Meister(in) Avatar von lukasn
    Registriert seit
    23.02.2008
    Ort
    Schweiz
    Alter
    27
    Beiträge
    491
    Danke
    2
    Bekam 12 mal "Danke" in 11 Postings

    Standard AW: foreach-Schleife bricht nach einer gewissen Anzahl von Durchläufen ab

    Da müsste man jetzt wissen, in was für ein Datenbankfeld du schreiben willst. Ein VARCHAR(60) wär wohl überfüllt, ein TEXT oder BLOB eher nicht.

  10. #10
    Großmeister(in)
    Themenstarter

    Registriert seit
    18.01.2007
    Ort
    Hamburg
    Alter
    26
    Beiträge
    710
    Danke
    2
    Bekam 2 mal "Danke" in 2 Postings

    Standard AW: foreach-Schleife bricht nach einer gewissen Anzahl von Durchläufen ab

    Achja, natürlich -.- ist ein TEXT Feld.

Ähnliche Themen

  1. foreach-Schleife; eigenartiges Problem
    Von Kemos im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 9
    Letzter Beitrag: 06.01.2014, 17:09
  2. foreach-Schleife zur Text-Verschlüsselung
    Von Permafrost im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 17
    Letzter Beitrag: 23.02.2011, 17:58
  3. Brauche Hilfe - Abbruch von foreach Schleife
    Von TanyaTie im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 12
    Letzter Beitrag: 26.06.2009, 20:49
  4. MSN bricht nach ein paar SEKUNDEN AB!!!!!
    Von Ma_rC im Forum Computer - Internet Forum
    Antworten: 5
    Letzter Beitrag: 29.04.2007, 04:36
  5. Nero Download bricht nach 40% ab
    Von Ericfischer im Forum Computer - Internet Forum
    Antworten: 5
    Letzter Beitrag: 09.04.2007, 12:32

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •