BlätterfunktionForum » Tutorials » Help » Blätterfunktion
-
07.10.2008 um 19:41 Uhr
Hallo!
Ich habe auf meiner HP nun die Bltterfunktion aus dem Ask&Answer-Script eingebaut (http://www.mm-speech.de/index.php?site=unterseiten/dubs) Klappt auch gut, nur ffnet sich die Seite, die man ber die nchste Seitenzahl oder "letzte Seite" aufruft in einem neuen Fenster und nicht dort, wo ich es haben will, nmlich in meinem Content.
Ich denke, dass ich nur einen kleinen Teil in der Pfadangabe ndern muss....aber was?! Kann mir jemand helfen?
LG, Suzuki
-
08.10.2008 um 13:05 Uhr
Du musst die Variable $pfad korrekt definieren, sofern du das Skript nicht abgeaendert hast...
Denn im Moment verweisst die Blaetterfunktion,
immer auf deine index.php, es muesste aber fuer die Seite lauten:
index.php?site=unterseiten/dubs
Sonst greift dein include nicht ...
So dann ...
<?php // ---------------------- Seitennavigationsdaten ------------------------------------------- // $pfad = "index.php?site=unterseiten/dubs"; // Linkziel ... $links_per_page = "5"; // Anzahl der Links pro Seite $p = "5"; // Anzahl der Links in Seitenavigation $total_records = mysql_num_rows($result); $pages = ceil($total_records / $links_per_page); // korrigieren der aktuellen Seite if(empty($_GET['go'])) { $go = 1; } elseif($_GET['go'] <= 0 || $_GET['go'] > $pages) { $go = 1; } else { $go = $_GET['go']; } // Linkkette $links = array(); if(($go - $p) < 1){ $prevOffset = $go - 1; }else { $prevOffset = $p; } if(($go + $p) > $pages) { $nextOffset = $pages - $go; }else { $nextOffset = $p; } $off = ($go - $prevOffset); if ($go- $prevOffset > 1){ $first = 1; $links[] = "<a href="".$pfad."&go=$first" title="Zur ersten Seite springen"> Erste ...</a>n"; } if($go != 1){ $prev = $go-1; $links[] = "<a href="".$pfad."&go=$prev" title="Zurueck zur letzen Seite"> </a>n"; } for($i = $off; $i <= ($go + $nextOffset); $i++){ if ($i != $go){ $links[] = "<a href="".$pfad."&go=$i" title="Seite $i anzeigen">$i</a>n"; }elseif($i == $pages) { // aktuelle Seite, braucht keinen Link $links[] = "<span class="current">[ $i ]</span>n"; } elseif($i == $go){ // aktuelle Seite, braucht keinen Link $links[] = "<span class="current">[ $i ]</span>n"; } } if($go != $pages){ $next = $go+1; $links[] = "<a href="".$pfad."&go=$next" title="Weiter zur naechsten Seite"> </a>n"; } if ($off+$prevOffset*2 < $pages){ // zur letzen Seite springen $last = $pages; $links[] = "<a href="".$pfad."&go=$last" title="Zur letzen Seite springen">... Letzte </a>n"; } $link_string = implode(" ", $links); // Packt alles in einen String $start = ($go-1) * $links_per_page; // ---------------------- ENDE Seitennavigationsdaten ?>
Damit der Validator nicht meckert, muesste du &go durch &go bei $links[] = ... jeweils ersetzen
Der Beitrag wurde insgesamt 1 mal editiert, zuletzt 08.10.2008 um 13:06 Uhr ...... { signatur } ... -
08.10.2008 um 17:04 Uhr
Vielen Dank!
Klappt wunderbar^^
-
11.07.2009 um 17:34 Uhr
Hallo Alice
Ich mchte dir danken fr die klasse Bltterfunktion. Jedoch habe ich das gleiche Problem wie Suzuki.
Ich verwende auch einen switch include.
Ich habe das auch im pfad gendert
$pfad = 'index.php?seite=member';
Jedoch zeigt er mir dann eine lehre Seite an.
Zur erklrung: ich habe das bltterscript auf member_inc.php diese wird dann in die member.php includet. "index.php?seite=member" entspricht der seite member.php
Wre dir sehr dankbar fr deine Hilfe.
-
12.07.2009 um 23:07 Uhr
Freut mich dass du es nun doch selbst auf die Reihe bekommen hast, aron12
Liebe Gruesse
Alice... { signatur } ... -
13.09.2009 um 15:24 Uhr
hm ja ich habe auch ein Problem mit dieser Funkrion.
und zwar geht es um diese seite hier [http://sweet-dreams.ani-metwork.de/index.php?site=gfx_pixel]. Bei mir werden die Bild-Datein als .Zip gezeigt anstaat wie es eigenlich sein sollte in .jpg.
Dies hier ist der Code:
<?php // Seitenzahl ermitteln $go = (!empty($_GET['go'])) ? $_GET['go'] : 1; // -> wenn keine Seitenzahl angegeben wird, dann ist es die erste Seite // ---------------------- Konfiguration ------------------------------------------- $anzeige = 15; // Zahl der Grafiken die pro Seite angezeigt werden sollen $p = 3; // Anzahl der Links die auf der Seite angezeigt werden sollen $verzeichnis = "GFX/Pixel"; // Verzeichnisbestimmung fuer die Bildausgabe $vorschau = "GFX/Vorschau/Pixel"; // --------------------------------------------------------------------------------- $oeffnen = opendir($verzeichnis); // oeffnet das angegebene Verzeichnis $oeffen = opendir($vorschau); // oeffnet das angegebene Verzeichnis //Dateien aus Ordner auslesen while ($file = readdir ($oeffnen)) // Thumbs ausschliessen if ($file != "." && $file != ".." && $file != "Thumbs.db" && preg_match("/\./",$file)){ $array[] = $file; // Die Dateien aus dem Ordner werden in ein array gepackt } } closedir($oeffnen); // Schliet den Ordner wieder rsort($array); // Sortiert das $array foreach($array as $file) { // Hier wird das $array auseindander genommen $dateienanzahl++; if($dateienanzahl<=$anzeige*$go && $dateienanzahl>$anzeige*($go-1)){ // nur dass aus, was hinter dem .Punkt steht $punkt = strrchr($file, '.'); //Dateiendung herausfiltern $title = str_replace($punkt, '', $file); // Grafik ausgeben echo "<div class=\"bg\"><a href=\"$verzeichnis/$file\"><img src=\"$vorschau/$file\" class=\"Avatar\" border=\"0\" title=\"$title\" alt=\"$title\"/></a></div>\n"; } } // ---------------------------------- Seitennavigation definieren --------------------- $pages = ceil($dateienanzahl / $anzeige); // Anzahl der Seiten ermitteln // korrigieren der aktuellen Seite if(empty($_GET['go'])) { $go = 1; } elseif($_GET['go'] <= 0 || $_GET['go'] > $pages) { $go = 1; } else { $go = $_GET['go']; } // Linkkette $links = array(); $url = "index.php?site=gfx_pixel"; if(($go - $p) < 1){ $prevOffset = $go - 1; }else { $prevOffset = $p; } if(($go + $p) > $pages) { $nextOffset = $pages - $go; }else { $nextOffset = $p; } $off = ($go - $prevOffset); if ($go- $prevOffset > 1){ $first = 1; $links[] = "<a href=\"$url&go=$first\" title=\"Zur ersten Seite springen\">« Erste ...</a>\n"; } if($go != 1){ $prev = $go-1; $links[] = "<a href=\"$url&go=$prev\" title=\"Zurueck zur letzen Seite\"> «</a>\n"; } for($i = $off; $i <= ($go + $nextOffset); $i++){ if ($i != $go){ $links[] = "<a href=\"$url&go=$i\" title=\"Seite $i anzeigen\">$i</a>\n"; }elseif($i == $pages) { // aktuelle Seite, braucht keinen Link $links[] = "<span class=\"current\">[ $i ]</span>\n"; } elseif($i == $go){ // aktuelle Seite, braucht keinen Link $links[] = "<span class=\"current\">[ $i ]</span>\n"; } } if($go != $pages){ $next = $go+1; $links[] = "<a href=\"$url&go=$next\" title=\"Weiter zur naechsten Seite\"> » </a>\n"; } if ($off+$prevOffset*2 < $pages){ // zur letzen Seite springen $last = $pages; $links[] = "<a href=\"$url&go=$last\" title=\"Zur letzen Seite springen\">... Letzte »</a>\n"; } // Alle Links in einen String packen $link_string = implode(" ", $links); echo "<div id=\"navigation\">\n"; echo "<br style=\"clear: left\" /><br><br><br><br><span class=\"pages\">Seite $go von $pages</span>\n"; echo $link_string; // Ausgabe der Seitennavigation echo "</div>\n" ?>
Die Datein liegen auch alle richtig im Ordner =(
Wre sehr erfreut wenn mir jemand da helfen knnte =) -
13.09.2009 um 19:49 Uhr
ich hab das selbe Problem, nur dass ich es mit brushes und vorschau machen mchte...
Aber ich dachte wenn ich die while schleife wiederhole funktioniert es, aber es ist nicht so, mir wird dann nur der titel angezeigt, der mit dem brush verlinkt ist...
<h1>Brushes</h1> <?php // Seitenzahl ermitteln $go = (!empty($_GET['go'])) ? $_GET['go'] : 1; // -> wenn keine Seitenzahl angegeben wird, dann ist es die erste Seite // ---------------------- Konfiguration ------------------------------------------- $anzeige = 10; // Zahl der Grafiken die pro Seite angezeigt werden sollen $p = 3; // Anzahl der Links die auf der Seite angezeigt werden sollen $verzeichnis = "brushes"; // Verzeichnisbestimmung fuer die Bildausgabe $preview = "brushes/pre"; // Verzeichnisbestimmung fuer die Bildausgabe // --------------------------------------------------------------------------------- $oeffnen = opendir($verzeichnis); // oeffnet das angegebene Verzeichnis //Dateien aus Ordner auslesen while ($file = readdir ($oeffnen)) { // Thumbs ausschliessen if ($file != "." && $file != ".." && $file != "Thumbs.db" && preg_match("/\./",$file)){ $array[] = $file; // Die Dateien aus dem Ordner werden in ein array gepackt } } closedir($oeffnen); // Schliet den Ordner wieder $oeffne = opendir($preview); // oeffnet das angegebene Verzeichnis //Dateien aus Ordner auslesen while ($pre = readdir ($oeffne)) { // Thumbs ausschliessen if ($pre != "." && $pre != ".." && $pre != "Thumbs.db" && preg_match("/\./",$file)){ $array[] = $pre; // Die Dateien aus dem Ordner werden in ein array gepackt } } closedir($oeffne); // Schliet den Ordner wieder sort($array); // Sortiert das $array foreach($array as $file) { // Hier wird das $array auseindander genommen $dateienanzahl++; if($dateienanzahl<=$anzeige*$go && $dateienanzahl>$anzeige*($go-1)){ // nur dass aus, was hinter dem .Punkt steht $punkt = strrchr($file, '.'); //Dateiendung herausfiltern $title = str_replace($punkt, '', $file); // Grafik ausgeben echo "<a href='$verzeichnis/$file'><img src='$preview/$pre' title='$title' border='0' alt='$title' /></a>\n"; } } // ---------------------------------- Seitennavigation definieren --------------------- $pages = ceil($dateienanzahl / $anzeige); // Anzahl der Seiten ermitteln // korrigieren der aktuellen Seite if(empty($_GET['go'])) { $go = 1; } elseif($_GET['go'] <= 0 || $_GET['go'] > $pages) { $go = 1; } else { $go = $_GET['go']; } // Linkkette $links = array(); $url = ('?page=brush'); if(($go - $p) < 1){ $prevOffset = $go - 1; }else { $prevOffset = $p; } if(($go + $p) > $pages) { $nextOffset = $pages - $go; }else { $nextOffset = $p; } $off = ($go - $prevOffset); if ($go- $prevOffset > 1){ $first = 1; $links[] = "<a href=\"$url&go=$first\" title=\"Zur ersten Seite springen\">« Erste ...</a>\n"; } if($go != 1){ $prev = $go-1; $links[] = "<a href=\"$url&go=$prev\" title=\"Zurueck zur letzen Seite\"> «</a>\n"; } for($i = $off; $i <= ($go + $nextOffset); $i++){ if ($i != $go){ $links[] = "<a href=\"$url&go=$i\" title=\"Seite $i anzeigen\">$i</a>\n"; }elseif($i == $pages) { // aktuelle Seite, braucht keinen Link $links[] = "<span class=\"current\">[ $i ]</span>\n"; } elseif($i == $go){ // aktuelle Seite, braucht keinen Link $links[] = "<span class=\"current\">[ $i ]</span>\n"; } } if($go != $pages){ $next = $go+1; $links[] = "<a href=\"$url&go=$next\" title=\"Weiter zur naechsten Seite\"> » </a>\n"; } if ($off+$prevOffset*2 < $pages){ // zur letzen Seite springen $last = $pages; $links[] = "<a href=\"$url&go=$last\" title=\"Zur letzen Seite springen\">... Letzte »</a>\n"; } // Alle Links in einen String packen $link_string = implode(" ", $links); echo "<div class=\"navigation\">\n"; echo "<span class=\"pages\">Seite $go von $pages</span>\n"; echo $link_string; // Ausgabe der Seitennavigation echo "</div>\n"; ?>
Wrde mich ber hilfe freuen.
LG Katjana
Der Beitrag wurde insgesamt 3 mal editiert, zuletzt 13.09.2009 um 19:56 Uhr ... -
14.09.2009 um 00:04 Uhr
@DJaneMauzi
Du versuchst also auch 2 Ordner gleichzeit zu oeffnen, sehr fein habt ihr euch etwa abgesprochen ...
Mal davon abgesehen, das z.B. bei der while-Schleife eine { fehlt, ist das hier
$oeffnen = opendir($verzeichnis); // oeffnet das angegebene Verzeichnis
$oeffen = opendir($vorschau); // oeffnet das angegebene Verzeichnis
totaler Schmu ...
Warum bestueckst du die Variable oeffnen zuerst mit dem Befehl den einen, und eine Zeile tiefer dann doch nen anderen Ordner zu oeffnen?
Was soll das bezwecken, etwa das dir gleich 2 Ordner ausgelesen werden oder wie?
Funktioniert nicht, $oeffen = opendir($vorschau) ueberschreibt automatisch $oeffnen = opendir($verzeichnis), so dass dir immer $vorschau geoeffnet werden wird...
Du brauchst keine 2 Ordner auslesen, das geht auch einfacher.
Du hast allem Anschein nach also einen Ordner, der die Vorschaubilder enthaelt und der andere dann die dazugehoerige Zip-Datei oder?
Du muss nur darauf achten, dass das Vorschaubild genauso heisst wie die dazugehoerige Zip-Datei, dann liest du ganz normal den Ordner der Vorschaubilder aus und aenderst das hier:
echo "<a href='$verzeichnis/$file'><img src='$preview/$pre' title='$title' border='0' alt='$title' /></a>n";
Wie folgt ab:
echo "<a href='".$verzeichnis."/".$title.".zip'><img src='$preview/$pre' title='$title' border='0' alt='$title' /></a>n";
@Katjana
Das was du da fabriziert hast kann nicht funktionieren, du ueberschreibst in der 2ten While Schleife das $array[], weshalb das was in der ersten While-Schleife ins Array $array gepackt wurde weg ist...
Fuer die gilt das Selbe wie fuer DJaneMauzi auch, nur den Vorschaubilder Ordner auslesen und die zu verlinkende Datei genauso benennen wie die Vorschau und im Link dann anstatt $verzeichnis/$file dann ".$verzeichnis."/".$title.".zip verwenden ...
... { signatur } ... -
14.09.2009 um 17:22 Uhr
Okay, dankeschn.
LG Katjana
-
23.09.2009 um 22:13 Uhr
Langsam trau ich mich gar nicht mehr zu fragen, da ich immer zu viel Frage
Tut mir auch leid,
aber jetzt bin ich gerad ein wenig berfordert, warum werden mir die sachen, denn jetzt doppelt angezeigt? Klick
<h1>Gradients</h1> <?php // Seitenzahl ermitteln $go = (!empty($_GET['go'])) ? $_GET['go'] : 1; // -> wenn keine Seitenzahl angegeben wird, dann ist es die erste Seite // ---------------------- Konfiguration ------------------------------------------- $anzeige = 20; // Zahl der Grafiken die pro Seite angezeigt werden sollen $p = 3; // Anzahl der Links die auf der Seite angezeigt werden sollen $verzeichnis = "verlaeufe"; // Verzeichnisbestimmung fuer die Bildausgabe // --------------------------------------------------------------------------------- $oeffnen = opendir($verzeichnis); // oeffnet das angegebene Verzeichnis //Dateien aus Ordner auslesen while ($file = readdir ($oeffnen)) { // Thumbs ausschliessen if ($file != "." && $file != ".." && $file != "Thumbs.db" && preg_match("/\./",$file)){ $array[] = $file; // Die Dateien aus dem Ordner werden in ein array gepackt } } closedir($oeffnen); // Schliet den Ordner wieder $anzahl = count($array); rsort($array); // Sortiert das $array echo "<div align='center'> Es sind <b>$anzahl</b> Gradients vorhanden.</div>"; foreach($array as $file) { // Hier wird das $array auseindander genommen $dateienanzahl++; if($dateienanzahl<=$anzeige*$go && $dateienanzahl>$anzeige*($go-1)){ // nur dass aus, was hinter dem .Punkt steht $punkt = strrchr($file, '.'); //Dateiendung herausfiltern $title = str_replace($punkt, '', $file); // Grafik ausgeben echo "<a href='".$verzeichnis."/".$title.".zip'><img class='bildspace' src='".$verzeichnis."/".$title.".jpg' title='$title' border='0' alt='$title' /></a>"; } } // ---------------------------------- Seitennavigation definieren --------------------- $pages = ceil($dateienanzahl / $anzeige); // Anzahl der Seiten ermitteln // korrigieren der aktuellen Seite if(empty($_GET['go'])) { $go = 1; } elseif($_GET['go'] <= 0 || $_GET['go'] > $pages) { $go = 1; } else { $go = $_GET['go']; } // Linkkette $links = array(); if(($go - $p) < 1){ $prevOffset = $go - 1; }else { $prevOffset = $p; } if(($go + $p) > $pages) { $nextOffset = $pages - $go; }else { $nextOffset = $p; } $off = ($go - $prevOffset); if ($go- $prevOffset > 1){ $first = 1; $links[] = "<a href=\"?site=icons&go=$first\" title=\"Zur ersten Seite springen\">« Erste ...</a>\n"; } if($go != 1){ $prev = $go-1; $links[] = "<a href=\"?site=icons&go=$prev\" title=\"Zurueck zur letzen Seite\"> «</a>\n"; } for($i = $off; $i <= ($go + $nextOffset); $i++){ if ($i != $go){ $links[] = "<a href=\"?site=icons&go=$i\" title=\"Seite $i anzeigen\">$i</a>\n"; }elseif($i == $pages) { // aktuelle Seite, braucht keinen Link $links[] = "<span>[ $i ]</span>\n"; } elseif($i == $go){ // aktuelle Seite, braucht keinen Link $links[] = "<span>[ $i ]</span>\n"; } } if($go != $pages){ $next = $go+1; $links[] = "<a href=\"?site=icons&go=$next\" title=\"Weiter zur naechsten Seite\"> » </a>\n"; } if ($off+$prevOffset*2 < $pages){ // zur letzen Seite springen $last = $pages; $links[] = "<a href=\"?site=icons&go=$last\" title=\"Zur letzen Seite springen\">... Letzte »</a>\n"; } // Alle Links in einen String packen $link_string = implode(" ", $links); echo "<h3>\n"; echo "<b>Seite $go von $pages</b>\n"; echo $link_string; // Ausgabe der Seitennavigation echo "</h3>\n"; ?>
Was hab ich denn nun schon wieder falsch
LG Katjana