tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
9
ZUGRIFFE
1531
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    asdfg asdfg ist offline Mitglied Bronze
    Registriert seit
    Mar 2004
    Beiträge
    45
    Ich arbeite gerade mit einem Galleriescript, wobei ich in der Detailansicht zwischen den Bilder hin und her switche. Wie kann ich den Anfang und das Ende berechnen?

    PHP-Code:
    <?

    function show_thumbs($cols$th_width$th_height$cellpadding
                         
    $cellspacing$perpage)
    {
      
    $dir $_GET["dir"];
      
    $tot count_files($dir);
      if (isset(
    $_GET["page"])) {
        
    $page $_GET["page"];
      }  
      if (isset(
    $_GET["img"])) {
        
    $img $_GET["img"];
      }
      global 
    $showfilename;
      global 
    $hidefilenameext;
      
      
      
      echo 
    "<div style='text-align: center'>";
      echo 
    "<table border='0' cellpadding='$cellpadding
            cellspacing='
    $cellspacing' align='center'>\n";
      echo 
    "<tr>\n";
             
      
    $filelist list_files("./$dir/thumbs");
      
    $n 1;
      
      
    $end min(($page $perpage), sizeof($filelist));

      for (
    $i = (($page 1) * $perpage);  $i $end$i++) 
      {
        echo 
    "<td>\n";    
        echo 
    "<table border='0' cellspacing='0' cellpadding='0' 
              >\n"
    ;
        echo 
    "<tr><td>\n";
        echo 
    "<a href='show.php?dir=$dir&tot=$tot&img=".($i 1).
             
    "&page=$page'>\n";
        echo 
    "<img src='$dir/thumbs/$filelist[$i]' style='filter:alpha(opacity=30)' onmouseover='nereidFade(this,100,30,5)' onmouseout='nereidFade(this,30,50,5)' width='$th_width
                   height='
    $th_height' border='0' alt=''><br>\n";
        echo 
    "</a>\n";
        echo 
    "</td></tr>\n";
        echo 
    "</table>\n";
        
        if (
    $showfilename
        {
          if (
    $hidefilenameext) {
            echo 
    "<small>".substr($filelist[$i], 0strrpos($filelist[$i], '.'))."</small>";
          }
          else
          {
            echo 
    "<small>$filelist[$i]</small>";
          }     
        }
        
        echo 
    "</td>\n"

        if ((
    $n $cols) == && ($n != $perpage)) 
        {
          echo 
    "</tr>";
          echo 
    "<tr align='center'>";
        }
        
        
    $n++;
      }
      echo 
    "</tr>\n";    
      echo 
    "</table>";
     

      if (
    sizeof($filelist) > $perpage) {
        echo (
    "Page:&nbsp;");
        
        for (
    $j 1$j <= ceil(sizeof($filelist) / $perpage); $j++) {
         
         
      
         if (
    $page == $j) {
           echo 
    "<b>".$j."</b>";
         }
         else 
         {
           echo 
    $j;
         } 
          
         echo 
    "</a>";
         echo (
    "&nbsp;&nbsp;");
        }
      
        echo 
    "<br><br>";  
      }

        
      echo 
    "</div>";
     }


          
    // Hier beginnt der Teil inwelchem ich berechnen muss wann der Anfang und das Ende kommt 

    function show_picture()
    {
      
    $dir $_GET["dir"];
      
    $tot $_GET["tot"];
      
    $img $_GET["img"];

      echo 
    "<div style='text-align: center'>";
      
      
      if (
    $img  1)
      {
         
      }

      

      if (
    $img $tot)
      {
        
      }

      echo 
    "</big>\n";
     
      
      echo 
    "<table width='100%' border='0' valign='top'  bordercolor='black' cellspacing='0' cellpadding='0' 
                    align='center'>\n"
    ;
      echo 
    "<tr><td align='center'>\n";
      
      echo 
    "<table border='1' bordercolor='black' cellspacing='0' cellpadding='0'><tr><td><a href='javascript:window.history.back()'>"
      echo 
    "<img src='$dir/".search_file("./$dir"$img)."' border=0 
            onLoad='resize(this);' name=foto 
            >"
    ;
      echo 
    "</a><table cellspacing='0' cellpadding='0'><tr><td align='left'><img src='_photo/fips.jpg'></td></tr></table></td></tr></table>";
            
      echo 
    "</td></tr>\n";
      echo 
    "</table>\n";

    echo 
    "<br>";

     echo 
    "<a href='".$PHP_SELF."?dir=".($_GET["dir"])."&tot=".($_GET["tot"])."&img=".($_GET["img"]-1)."'>Vorheriges</a>&nbsp;&nbsp;"
     echo 
    "<a href='".$PHP_SELF."?dir=".($_GET["dir"])."&tot=".($_GET["tot"])."&img=".($_GET["img"]+1)."'>Nächstes</a>";
      
      echo 
    "<br><br>\n"
      echo 
    "<big>\n";
      
      
      
      
      
      

      
      
      echo 
    "</div>"
    }

    ?>
    Wie füge ich da eine for-Schleife ein die mir den Anfang und das Ende berechnet?
     

  2. #2
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Den Anfang und das Ende wovon? Bitte präzisiere dein Anliegen.
     
    Markus Wulftange

  3. #3
    Registriert seit
    Apr 2005
    Beiträge
    680
    Hallo,

    du meinst sicher Anfang und Ender einer Bilderserie ?

    Wie hast du die Bilder denn abgelegt ?
     

  4. #4
    Avatar von Hektik
    Hektik Hektik ist offline Mitglied Brokat
    Registriert seit
    May 2004
    Ort
    Kleve (NRW)
    Beiträge
    300
    Dennis Wronka hat eine sehr schlichte Bildergallerie durch seine DIR-Listing-Klasse ermöglicht. Einfach mal die Forensuche beschäftigen
    Diese habe auch ich mir als Grundlage genommen und daraus eine ansehnliche Gallerie entwickelt.
    Desweiteren wäre es toll, wenn du den von dir eingefügten Code wenigstens soweit schmälern könntest, dass nur noch die wichtigen, benötigten Teile drinstehen
     

  5. #5
    asdfg asdfg ist offline Mitglied Bronze
    Registriert seit
    Mar 2004
    Beiträge
    45
    Na ja, ich gebe, zu dieser Code ist ein riesen Durcheinander. Aber es sollte doch möglich sein, diese Schleife einzubauen? Ich möchte selbst eine eigene Gallerie aufsetzen, aber im Moment habe ich dafür einfach zu wenig Zeit.

    Genau, ich meine den Anfang un das Ende einer Bildserie.
    Ich habe die Bilder in verschiedenen Ordnern abgelegt. Der Name des jeweiligen Ordners ist in $_GET["dir"]; oder $dir geschrieben.

    Die Anzahl ist jeweils in $tot geschrieben.

    Ich denke, man müsste die Schleife nach der Funktion show_picture() integrieren.

    Die Bilder werden auch schon mal gezählt, aber ich kann nicht herausfinden, um was es in diesem Teil genau geht.

    PHP-Code:
    $filelist list_files("./$dir/thumbs"); 
    $n 1
     
    $end min(($page $perpage), sizeof($filelist)); 
    for (
    $i = (($page 1) * $perpage);  $i $end$i++) 
     

  6. #6
    Avatar von Hektik
    Hektik Hektik ist offline Mitglied Brokat
    Registriert seit
    May 2004
    Ort
    Kleve (NRW)
    Beiträge
    300
    In deinem Script ist der Anfang, wenn $page == 0 ist.
    Ende ist in deinem Script, wenn $page >= $end ist.

    Solltest da trotzdem mit $_GET['page'] arbeiten, statt mit $page
     

  7. #7
    asdfg asdfg ist offline Mitglied Bronze
    Registriert seit
    Mar 2004
    Beiträge
    45
    An Hektik: Ja genau, wie du beschriben hast, ist es sinnvoll, wenn ich zuerst den Code so darstelle, dass "nichtbenötigte" entfernt wird

    und $_GET['page'] ist doch ein Array und $page ist eine Variable oder verstehe ich mich da falsch?

    Wenn jemand trozdem schon einen Durchblick oder Weg, dürft ihr ruhig eure Lösung beschreiben.

    Danke
     

  8. #8
    Registriert seit
    Feb 2004
    Beiträge
    592
    Hi,

    $_GET ist ein assoziatives array in dem alle Werte, die mit der GET Methode übergeben werden, gespeichert sind. Du kannst dann mit $_GET['variablen_name_ohne_$'] darauf zugreifen.

    Es gibt noch weitere $_POST, $_SESSION,...

    Gruß

    Romsl
     

  9. #9
    asdfg asdfg ist offline Mitglied Bronze
    Registriert seit
    Mar 2004
    Beiträge
    45
    Danke für die Info!

    Ich habe folgenden Eintrag gefunden:http://www.tutorials.de/forum/php/16...mehrere+Seiten & werde mich danach orientieren ... & mich wieder melden...
     

  10. #10
    asdfg asdfg ist offline Mitglied Bronze
    Registriert seit
    Mar 2004
    Beiträge
    45
    Das Problem wurde somit gelöst; danke an alle!
     

Ähnliche Themen

  1. Antworten: 2
    Letzter Beitrag: 03.04.09, 11:51
  2. Der Anfang vom Ende
    Von mAu im Forum Fotografie
    Antworten: 7
    Letzter Beitrag: 26.10.07, 00:29
  3. slidemenu am anfang und ende anhalten
    Von PeterMcB im Forum Flash Plattform
    Antworten: 4
    Letzter Beitrag: 01.12.06, 12:47
  4. Objekt am Anfang und Ende langsamer
    Von Xo-mate im Forum Cinema 4D
    Antworten: 12
    Letzter Beitrag: 05.03.05, 20:23
  5. Antworten: 5
    Letzter Beitrag: 10.06.04, 22:51