PHP4-Forum
Forum | Befehle | MySQL | Beispiele | Newsletter | Suche | Home

Untermenü

Forum
Beitrag schreiben
Übersicht aller Beiträge

Zu dieser Seite

Übersicht aller Beiträge
Willkommen im Forum!


Sehr geehrte Besucher, wir mochten gern, dass dieses Forum weiterhin ein hohes Niveau besitzt. Ausserdem mochten wir gerne vermeiden, dass Fragen immer doppelt vorkommen. Deshalb appellieren wir auf Ihre Geduld und bitten Sie zuerst nach Antworten zu suchen und erst dann Fragen zu stellen. Benutzen Sie bitte dafur entweder das Sucheformular unten, oder unsere Suchmaschine, wenn Sie nach Befehlen, oder sonstigen Inhalten fundig werden mochten.

PHP4-Forum Zum ForumSeite 0
PHP4-Forum Frage zu einem Seitenzahlen ScriptPoldi8502.06.2010 | 14:33:26
PHP4-Forum [Kein Betreff]Poldi8502.06.2010 | 14:34:49
PHP4-Forum drum suche...Unbekannt02.06.2010 | 21:25:57
PHP4-Forum [Kein Betreff]Poldi8502.06.2010 | 22:04:24
PHP4-Forum hmmmUnbekannt02.06.2010 | 22:21:54
PHP4-Forum [Kein Betreff]Poldi8503.06.2010 | 21:05:37
PHP4-Forum dir..Unbekannt06.06.2010 | 01:02:32

Hallo,

ich habe hier ein fertiges Seitenzahlen Script.

Das sieht so aus:

Seite: [1] 2 3 4

Soweit funktioniert auch alles. Meine Frage ist nun, wie bekomme ich es hin, dass das Script nur die ersten 10 Seitenzahlen anzeigt und dann zb nach der 10 Seitenzahl "..." macht.

Ich habe nämlich viele Artikel, sprich es gibt sehr viele Seitenzahlen. Wenn der User die erste Seite aufruft soll er nur die ersten 10 Seitenzahlen sehen.  Wenn er auf der 10. Seite ist, sollen die nächsten 10 Seitenzahlen gezeigt werden. Wie bekomme ich das am besten hin?

[PHP]<?php
//Abfrage auf welcher Seite man ist

//Wenn man keine Seite angegeben hat, ist man automatisch auf Seite 1
if($seite == ""){
  $seite = 1; 
  }
 
 
//Verbindung zu Datenbank aufbauen

include "db_login.php";

//Eintraege pro Seite: Hier 15 pro Seite
$eintraege_pro_seite = 5;

//Ausrechen welche Spalte man zuerst ausgeben muss:

$start = $seite * $eintraege_pro_seite - $eintraege_pro_seite;



$result = mysql_query("SELECT id FROM xxxxx WHERE page_id=".mysql_real_escape_string($id)."");
$menge = mysql_num_rows($result);

//Errechnen wieviele Seiten es geben wird
$wieviel_seiten = $menge / $eintraege_pro_seite;


//Ausgabe der Seitenlinks:
echo "<div align=\"center\">";
echo "<b>Seite:</b> ";


//Ausgabe der Links zu den Seiten
for($a=0; $a < $wieviel_seiten; $a++)
  {
  $b = $a + 1;

  //Wenn der User sich auf dieser Seite befindet, keinen Link ausgeben
  if($seite == $b)
      {
      echo "  <b>[$b]</b> ";
      }

  //Auf dieser Seite ist der User nicht, also einen Link ausgeben
  else
      {
      $next_ok = 1;
      echo "  <a href=\"page.php?page=kat&seite=$b&id=$id\">$b</a> ";
      }


  }
 
  if($next_ok == 1 && $seite != $a){
  // Rausfiden welche Seite als naechstes kommt
  $nex_seite = $seite + 1;
  echo "<a href=\"page.php?page=kat&seite=$nex_seite&id=$id\"> > </a>";
  }
 
echo "</div><br>";


//Tabelle Abfragen
//Tabelle hei&szlig;t hier einfach: Tabelle
$abfrage = "SELECT * FROM xxxxx WHERE page_id=".mysql_real_escape_string($id)." ORDER BY `id` DESC LIMIT $start, $eintraege_pro_seite";
$ergebnis = mysql_query($abfrage);
while($row = mysql_fetch_object($ergebnis))
    {
    // Hier die Ausgabe der Eintraege
  $id_kat = $id; $id_art = $row->id; include "tmp_einz_artikel.php"; 
  }


//Jetzt kommt das "Inhaltsverzeichnis",
//sprich dort steht jetzt: Seite: 1 2 3 4 5


//Wieviele Eintraege gibt es ?berhaupt

//Wichtig! Hier muss die gleiche Abfrage sein, wie bei der Ausgabe der Daten
//also der gleiche Text wie in der Variable $abfrage, blo&szlig; das hier das LIMIT fehlt
//Sonst funktioniert die Bl?tterfunktion nicht richtig,
//und hier kann nur 1 Feld abgefragt werden, also id

$result = mysql_query("SELECT id FROM xxxxxx WHERE page_id=".mysql_real_escape_string($id)."");
$menge = mysql_num_rows($result);

//Errechnen wieviele Seiten es geben wird
$wieviel_seiten = $menge / $eintraege_pro_seite;

//Ausgabe der Seitenlinks:
echo "<br><div align=\"center\">";
echo "<b>Seite:</b> ";


//Ausgabe der Links zu den Seiten
for($a=0; $a < $wieviel_seiten; $a++)
  {
  $b = $a + 1;

  //Wenn der User sich auf dieser Seite befindet, keinen Link ausgeben
  if($seite == $b)
      {
      echo "  <b>[$b]</b> ";
      }

  //Aus dieser Seite ist der User nicht, also einen Link ausgeben
  else
      {
      echo "  <a href=\"page.php?page=kat&seite=$b&id=$id\">$b</a> ";
      $next_ok = 1;
      }


  }
  if($next_ok == 1  && $seite != $a){
  // Rausfiden welche Seite als naechstes kommt
  $nex_seite = $seite + 1;
  echo "<a href=\"page.php?page=kat&seite=$nex_seite&id=$id\"> > </a>";
  }
echo "</div>";
?>[/PHP]

Antworten | Zurück | Eine neue Frage stellen | der Beitrag muss weg!

Dienstleistungen | Werbung | Impressum | Sitemap | Kontakt | Email © 1999 - 2012 | Last Update: 30.01.2012