ergebniss ausgabe beschränken

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

  • ergebniss ausgabe beschränken

    moin moin,

    script:
    PHP-Code:
    <?
    $dirpath = getcwd() . "/engine/archiv/";
    $dir = opendir($dirpath);
    $files = array();
    while ($file = readdir($dir)) {
       $localpath = $dirpath.$file;
       
       if (is_file($localpath)) {
           $key = filemtime($localpath).md5($file);
           $files[$key] = $file;
       }
    }
    ksort($files);
    $cronosfile = array();
    $cronosfile = array_reverse($files);
    foreach ($cronosfile as $file) {
    $showname = explode (".txt", $file); 
     echo "<tr>
                                  <td width=280><font face=verdana size=2 
    color=999999><b>$showname[0]</td><td width=200><a 
    href=\"index.php?a=archivresults&show=$showname[0]\"><font 
    face=verdana size=2 color=999999><b>[Ergebnisse anzeigen]
    </A></td></tr>";


    ?>
    kann ich diesem script auch klarmachen das er nur die ersten 20 ergebnisse liefern soll?

    und kann ich dem script auch klarmachen das es erst ab ergebniss 20 20 ergebnisse ausgeben soll?

  • #2
    Re: ergebniss ausgabe beschränken

    Original geschrieben von nicker
    moin moin,
    kann ich diesem script auch klarmachen das er nur die ersten 20 ergebnisse liefern soll?

    und kann ich dem script auch klarmachen das es erst ab ergebniss 20 20 ergebnisse ausgeben soll?
    wenn du das script ein wenig modifizierst, ja.
    (-:
    Bookmarks:·Bilder·Jobs·Recht·
    kostenloser Webkataloge-Assistent

    Kommentar


    • #3
      wie isn der befehl dazu, bzw hast n beispiel auf lager? =)

      Kommentar


      • #4
        PHP-Code:
        if (!$entry){ $entry=0; }
        $lastentrynumber $entrynumber+20;
        while (
        $file readdir($dir) and ($entrynumber $lastentrynumber)) {
           
        $localpath $dirpath.$file;
           
           if (
        is_file($localpath)) {
               
        $key filemtime($localpath).md5($file);
               
        $files[$key] = $file;
           }
           
        $entrynumber++;
        }
        echo 
        "<a href=\"?entrynumber=".$entrynumber."\">next page</a>"
        (-:
        Bookmarks:·Bilder·Jobs·Recht·
        kostenloser Webkataloge-Assistent

        Kommentar


        • #5
          hmm

          irgendwie geht das nicht, hab ich das falsch eingebaut? ich denke nicht oder?

          url: http://www.dein-kiel.de/wm/index.php?a=archiv2

          PHP-Code:
          <?
          $dirpath = getcwd() . "/engine/archiv/";
          $dir = opendir($dirpath);
          $files = array();
          if (!$entry){ $entry=0; }
          $lastentrynumber = $entrynumber+20;
          while ($file = readdir($dir) and ($entrynumber < $lastentrynumber)) {
             $localpath = $dirpath.$file;
             
             if (is_file($localpath)) {
                 $key = filemtime($localpath).md5($file);
                 $files[$key] = $file;
             }
             $entrynumber++;

          }
          ksort($files);
          $cronosfile = array();
          $cronosfile = array_reverse($files);

          foreach ($cronosfile as $file) {
          $showname = explode (".txt", $file); 
           echo "<tr>
                                        <td width=280><font face=verdana size=2 
          color=999999><b>$showname[0]</td><td width=200><a
           href=\"index.php?a=archivresults&show=$showname[0]\"><font
           face=verdana size=2 color=999999><b>[Ergebnisse anzeigen
          ]</A></td></tr>";


          ?>

          Kommentar


          • #6
            sorry, mein fehler...
            if (!$entrynumber){ $entrynumber=0; }

            der ganze kram muß vielleicht hier und da ein wenig angepasst werden - aber das bekommst du schon hin ;-)
            Zuletzt geändert von kill_bill; 18.04.2004, 19:02.
            (-:
            Bookmarks:·Bilder·Jobs·Recht·
            kostenloser Webkataloge-Assistent

            Kommentar


            • #7
              hmm immer noch nicht..

              ich kann auch beim besten willen nicht erkennen wo der fehler sein soll..

              http://www.dein-kiel.de/wm/index.php?a=archiv3
              PHP-Code:

              <?
              $dirpath = getcwd() . "/engine/archiv/";
              $dir = opendir($dirpath);
              $files = array();
              if (!$entrynumber){ $entrynumber=0; }
              $lastentrynumber = $entrynumber+20;
              while ($file = readdir($dir) and ($entrynumber < $lastentrynumber)) {
                 $localpath = $dirpath.$file;
                 
                 if (is_file($localpath)) {
                     $key = filemtime($localpath).md5($file);
                     $files[$key] = $file;
                 }
                 $entrynumber++;

              }
              ksort($files);
              $cronosfile = array();
              $cronosfile = array_reverse($files);

              foreach ($cronosfile as $file) {
              $showname = explode (".txt", $file); 
               echo "<tr>
                                            <td width=280><font face=verdana size=2 

              color=999999><b>$showname[0]</td><td width=200><a

               href=\"index.php?a=archivresults&show=$showname[0]\"><font

               face=verdana size=2 color=999999><b>[Ergebnisse anzeigen

              ]</A></td></tr>";


              ?>

              </table><br>
                                          <? echo "<a href=\"index.php?a=archiv3&entrynumber
              =".$entrynumber."\">
              <b>[Die nächsten 20 Shows]</a>"; ?>
              Zuletzt geändert von nicker; 18.04.2004, 19:12.

              Kommentar


              • #8
                probier mal den hier:
                PHP-Code:
                if (!$entrynumber){ $entrynumber=0; }
                $entrybegin=$entrynumber;
                $lastentrynumber $entrynumber+20;
                while (
                $file readdir($dir) and ($entrynumber $lastentrynumber)) {
                   
                $localpath $dirpath.$file;
                   
                   if (
                is_file($localpath) and ($entrynumber>=$entrybegin)) {
                       
                $key filemtime($localpath).md5($file);
                       
                $files[$key] = $file;
                   }
                   
                $entrynumber++;


                (-:
                Bookmarks:·Bilder·Jobs·Recht·
                kostenloser Webkataloge-Assistent

                Kommentar


                • #9
                  gleicher effekt, funktioniert nicht

                  aber schonmal danke für deine mühe

                  Kommentar


                  • #10
                    ich sehe gerade, dass du in den abfragen leerzeichen hast - das solltest du vermeiden ...

                    http://www.dein-kiel.de/wm/index.php...ults&show=Show 9 vom 17.04.04
                    (-:
                    Bookmarks:·Bilder·Jobs·Recht·
                    kostenloser Webkataloge-Assistent

                    Kommentar


                    • #11
                      ah, daran liegts also?

                      okay

                      Kommentar


                      • #12
                        hmm der code funktioniert leider auch nciht, wenn keine leerzeichen im txt file sind ;(

                        Kommentar


                        • #13
                          Kann ja auch nicht!

                          du zählst zwar immer weiter aussenrum - aber bei der Schleife, die die Dateien ausliest fängst du ja immer von vorne an!

                          d.h. du solltest in dem Fall die Schleife von 0 durchlaufen lassen (immer) und dann, wenn du im bereich zwischen $entrynumber und $lastentrynumber bist dann die Ausgabe machen
                          Ich hoffe, dass das verständlich war!

                          edit: bzw. nicht die Ausgabe dann starten sondern nur dann einen Eintrag in dein Array schreiben
                          C-Ya Toby

                          Kommentar


                          • #14
                            hmm ja ich glaub ich verstehe was du meinst, jedoch habe ich grad überhaupt kein peil wie ich das ambesten in code umsetze ;(

                            kann mir da vielleicht nochmal jemand helfen bzw nen denkanstoß geben oder hat sowas jemand noch als schnipsel rumfliegen? im archiv hab ich nichts gefunden ;(

                            Kommentar


                            • #15
                              für alle suchenden:

                              hier eine funktionierende lösung:

                              PHP-Code:
                               <?php
                              $filecount 
                              "0";
                              $dir="engine/archiv";
                              $dirh=opendir($dir);
                              while(
                              $filename=readdir($dirh))
                              {
                              if(
                              $filename!="." && $filename!=".." && is_file($dir."/".$filename)) $filecount++;
                              }
                              closedir($dirh);
                              $filecount = ($filecount-20);
                              echo 
                              "Es befinden sich ".$filecount." Dateien im Verzeichnis ".$dir;

                              ?>                          
                                                        <table width="80%" border="0" align="center"
                              cellpadding="0" cellspacing="0">
                                                          <?php
                               
                                $n
                              =0;
                                
                              $start=(!$_GET['start'])?0:$_GET['start'];
                              if (
                              $start 1)
                              {
                              $start="$filecount";
                              }
                              else
                              {
                              }
                              $startneu = ($start-20);
                              $startneu2 = ($start+20);
                                
                              $stop=$start+20;
                                
                               
                              $txtfiles opendir('engine/archiv'); 
                               while (
                              $file readdir($txtfiles)) {
                                 if (
                              $file != "." && $file != "..") {
                                        if (
                              $start>$n++) { continue; }
                                   if (
                              strtolower(substr($file, -4)) == ".txt") {
                              $file substr($file,0,strlen($file)-4);
                                     echo 
                              "<tr><td width=280><font face=verdana size=2 
                              color=999999><b>
                              $file</td><td width=200><div align=right><a 
                              href=\"index.php?a=archivresults&show=
                              $file\"><font face=verdana 
                              size=2 color=999999><b>[Ergebnisse anzeigen]</A></td></tr>"
                              ;

                                   } 
                                   if (
                              $n==$stop) { break; }
                                 }
                               }
                               
                              closedir($txtfiles);
                               
                               
                              ?>
                                                          <tr> 
                                                            <td width="50%"><a href="httpindex.php?a=archiv3&start=<?php echo $startneu;?
                              >
                              "><strong><font color="#999999" size="2" face="Verdana, Arial, 
                              Helveticasans-serif"><br>

                                                              <b>20 Shows zurück</b></font></strong></a></td>

                                                            <td><div align="
                              right"><a href="index.php?a=archiv3&start=<?php echo $startneu2;?

                              >
                              "><strong><font color="#999999" size="2" face="Verdana, Arial,
                               
                              Helveticasans-serif"><b><br>
                                                                20 Shows vor</b></font></strong></a></div></td>

                                                          </tr>
                                                        </table>

                              zählt zuerst alle datein im ordner, und gibt die 20 höchsten werte aus.

                              das lässt sich dann via 20 vor und zurück navigieren

                              sicherlich verbesserungswürdig - aber was solls, es funktioniert.


                              ich hätte nun nur eine frage dazu, der höchste wert wird unten, der niedrigste oben angezeigt, wie krieg ich das umgedreht?

                              script in action:

                              http://www.dein-kiel.de/wm/index.php?a=archiv

                              Kommentar

                              Lädt...
                              X