opendir() ??? !!! zeigt Dateinamen nicht an !!!

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • opendir() ??? !!! zeigt Dateinamen nicht an !!!

    hy @ all

    ich habe folgenes Script geschrieben...

    PHP Code:
    <?php

    $dir 
    'M://Muke//';

    $handle opendir($dir);

    while(
    false !== ($filename readdir ($handle))){
        if (!
    $filename="." && !$filename=".."){
            
    $filesize filesize($dir.$filename);
            echo 
    "$filename $filesize <br>";

        }else{
            echo 
    "Es wurde keine Dateien im Verzeichnis".$dir."gefunden !!!";
        }
    }
    ?>
    nun mein Problem....

    ich bekomme als Ergebniss zwar die Anzahl der Dateien raus...aber es wird der Dateiname und die Dateigrösse mit 0 aus gegeben...

    Code:
     0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br> 0 <br>
    jedes 0 <br> steht für eine Datei....

    aber der blöde Sack zeigt mir den Name und die Grösse nicht an....

    wieso ???

    kann mir wer helfen ???

    cya Jointy

  • #2
    Das sieht auch alles etwas komisch aus...
    PHP Code:
    $dir 'M://Muke//';
    $handle opendir($dir);
    // Deine While Schleife is bissi komisch...
    while($filename readdir ($handle)){
        
    // auch das if sieht voll umständlich aus
        
    if ($filename!="." && $filename!=".."){
            
    $filesize filesize($dir.$filename);
            echo 
    "$filename $filesize <br>";
        }
        
    // der Else Zweig kommt ja immer, weil . und .. immer vorhanden ist...

    /** 
     * Und ein bissi Fehlerbehandlung könnte auch noch dazu kommen...
     */ 
    Beantworte nie Threads mit mehr als 15 followups...
    Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

    Comment


    • #3
      Dat ist ja der Witz an der Sache, die Fehlermeldung kommt ja nicht....weil er zwar erkennt das da nen file ist aber den Namen wohl net lesen kann....

      deswegen...hab ich das mal mit else eingebaut....hätte ich vieleicht mal raus nehmen solln....

      PHP Code:
      <?php

      $dir 
      'M://Muke//';

      $handle opendir($dir);

      while(
      $filename readdir ($handle)){
          if (!
      $filename="." && !$filename=".."){
              
      $filesize filesize($dir.$filename);
              echo 
      "$filename $filesize <br> \n";

          }
      }
      ?>
      ihr versteht nicht das Problem...es ist nicht die Syntax die Fehlerhaft ist....es ist die Aüsführung von PHP....weil er die Dateiname nicht lesen kann oder will !!!...

      wenn ich falsches Verzeichniss angeb mault er rum !!! heist opendir().. OK

      cya Jointy


      Nachtrag !!!

      Ändert man das Script wie folgt ab, funktioniert es !!!!

      PHP Code:
      <?php

      $dir 
      'M://Muke//';

      $handle opendir($dir);

      while(
      $filename readdir ($handle)){
          if (
      $filename!="." && $filename!=".."){ // hier von !$var=  auf  $var!=
              
      $filesize filesize($dir.$filename);
              if (
      $filesize != 0){                             // filtert die Verzeichnisse raus !!!
                  
      echo "$filename $filesize <br>";
              }

          }
      }
      ?>
      Last edited by Jointy; 23-02-2003, 14:24.

      Comment


      • #4
        PHP Code:
        $var='test';
        echo 
        '!$var="..": '.(!$var=='..').'<br />';
        echo 
        '$var!="..": '.($var!='..'); 
        fehlt dir da was auf?
        !$var gibt einen boolean-wert zurück abhängig davon, ob die variable vorhanden/gesetzt ist

        $var!= prüft, ob der inhalt der variablen ungleich einem anderen wert ist

        => is imo nich das gleiche und damit isses sehr wohl die syntax
        Ich denke, also bin ich. - Einige sind trotzdem...

        Comment

        Working...
        X