irgendwo isn fehler

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

  • irgendwo isn fehler

    ich sags gleich ich bin noch anfänger und ich hab hier einen fehler und ich weiß nicht wo:

    PHP-Code:
    <?php
    $handle1
    =opendir('../../../_picture/galerie/big/tagot/02/');
    $handle2=opendir('../../../_picture/galerie/thumb/tagot/02/');
    echo 
    "Folgende Dateien wurden in die Datenbank eingefügt:<br>\n";
    while (
    $file1 readdir ($handle1)) {
        if (
    $file1 != "." && $file1 != "..") {
            while (
    $file2 readdir ($handle2)) {
                 if (
    $file2 != "." && $file2 != "..") {
                 
    mysql_query("UPDATE `galerie` SET `big` = '/tagot/02/$file2'");
                 echo 
    $file2." - ".$file1."<br>\n";
        }
    }
        }
    }
    mysql_close();
    closedir($handle1,$handle2);
    ?>

    anstatt $file2 in einer schleife durchlaufen zu lassen, nimmt er nur die erste und fügt es immer wieder ein:

    Folgende Dateien wurden in die Datenbank eingefügt:
    tn_tagot02_PB230001.JPG - big_tagot02_PB230001.JPG
    tn_tagot02_PB230002.JPG - big_tagot02_PB230001.JPG
    tn_tagot02_PB230003.JPG - big_tagot02_PB230001.JPG
    tn_tagot02_PB230004.JPG - big_tagot02_PB230001.JPG
    tn_tagot02_PB230005.JPG - big_tagot02_PB230001.JPG
    ...


    mfg & thx
    Schattenbaum | SelfHTML | SelfPHP | DrWeb | polygon.studio || Google | Teoma | Forum Suche

  • #2
    Re: irgendwo isn fehler

    Original geschrieben von the.gatekeeper
    anstatt $file2 in einer schleife durchlaufen zu lassen, nimmt er nur die erste und fügt es immer wieder ein
    nein, andersherum.

    $file1 bleibt immer das gleiche ($file1 steht bei deiner ausgabe ja hinten).

    ist aber auch klar, denn bei deiner logik ist ja auch ein denkfehler drin.

    äussere while-schleife: liest erste datei aus dem verzeichnis /big/tagot/02/, also die datei big_tagot02_PB230001.JPG.

    so, jetzt wird in der inneren while-schleife das verzeichnis /thumb/tagot/02/ einmal komplett durchlaufen.

    dann kommt der zweite durchlauf deiner äusseren while-schleife.
    in die innere while-schleife geht er jetzt aber gar nicht mehr rein - dieses verzeichnis hast du ja beim ersten durchlauf in der äusseren schleife schon einmal komplett "abgegrast", der "zeiger" oder wie auch immer du es nennen möchtest, steht jetzt also am ende des verzeichnisses, und es werden keine dateinamen mehr eingelesen.
    ab dem zweiten durchlauf der äusseren schleife geht er also in die innere schleife gar nicht mehr rein ...


    du könntest natürlich den befehl
    $handle2=opendir('../../../_picture/galerie/thumb/tagot/02/');
    in deine äussere schleife, vor dem beginn der inneren schleife, reinschreiben (plus closedir($handle2) nach der inneren schleife)
    - aber ob das dann das macht, was du willst, halte ich immer noch für fragwürdig. (da dürfte dann nämlich so eine art kreuzprodukt rauskommen ...)
    Zuletzt geändert von wahsaga; 26.11.2003, 14:59.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      naja bin halt kompliziert, aber danke, hab das wirklich übersehen
      werds mal ausprobieren
      Schattenbaum | SelfHTML | SelfPHP | DrWeb | polygon.studio || Google | Teoma | Forum Suche

      Kommentar

      Lädt...
      X