Bilder Galerie Weiter- / Zurück Button

Gunah

Erfahrenes Mitglied
moin

ich hab folgendes Problem:
Ich habe eine Kleine Galerie und möchte jetzt das es inerhalb der Galerie bei den Kategorien auf weiter und zurück geklickt werden kann.... und da es mehrere Gruppen gibt und die ID&GruppenID verwendet wird als "Erkennung" geht es nicht mit dem einfachen Count....

hab schon geguckt aber bisher nicht brauchbares gefunden...

bilder
Code:
  `id` int(11) NOT NULL auto_increment,
  `firma` varchar(50) collate latin1_general_ci NOT NULL,
  `group` varchar(50) collate latin1_general_ci NOT NULL,
  `desc` text collate latin1_general_ci NOT NULL,
  `size` int(255) NOT NULL,
  `size_big` int(255) NOT NULL,
  `contenttype` varchar(255) collate latin1_general_ci NOT NULL,
  `extension` varchar(10) collate latin1_general_ci NOT NULL default 'jpg',
  `contenttype_big` varchar(255) collate latin1_general_ci NOT NULL,
  `extension_big` varchar(10) collate latin1_general_ci NOT NULL default 'jpg',
  PRIMARY KEY  (`id`)
gruppe
Code:
  `id` int(11) NOT NULL auto_increment,
  `name` varchar(255) collate latin1_general_ci NOT NULL,
  `desc` varchar(255) collate latin1_general_ci NOT NULL,
  `file` varchar(255) collate latin1_general_ci NOT NULL,
  PRIMARY KEY  (`id`)

danke schonmal im vorraus

MfG Gunah
 
Das, was Du suchst nennt sich "Pagination" - eine Suche bei Google unter diesem Suchbegriff sollte Dir die passenden Infos geben ;)
 
Geht das nicht mit übergeben der aktuellen Position und dann die SQL Abfrage mit Limit auf diese Position setzen? Oder versteh ich da jetzt was falsch

Stefan Miefert
 
ja, so ist es...

Du musst zuerst die Menge an Datensätzen ermitteln, dann im Query mit Limit und Offset arbeiten, du brauchst die Anzahl Datensätze pro Seite und diese Variablen dann speichern.

PHP:
$SQL = "SELECT * FROM tabelle"; (evtl. noch die Where-Klausel dazu, sofern vorhanden)
$res  = mysql_query($SQL);
$num = mysql_num_rows($res);

$anzahl = 10; // 10 Datensätze per Seite
$pages = ceil( $num / $anzahl ); // Anzahl Seiten ermitteln

// Prüfen, ob eine Variable im Query-String liegt
if( isset($_GET['start']) ) {
  $start = intval($_GET['start']);
}
else
  $start = 0;

// Neue SQL-Anweisung
$SQL = "SELECT * FROM tabelle LIMIT $start, $anzahl";

Was dann folgt, ist die Verlinkung der Anzahl Pages, um den Start-Offset zu übergeben

Ansonsten dann doch google beauftragen, da das thema schon zig mal erklärt wurde
 
sorry es soll keine neuen Seiten sein wo der Inhalt drin als Weiterverlinkung auftaucht, sondern:

Code:
LISTE in der DB
LINK 1 (gruppe1) 
LINK 2 (gruppe 2)
LINK 3 (gruppe 1)
LINK 4 (gruppe 2)
(in der DB sieht das dann später noch mehr durcheinanderer aus ;) )

KLICK auf LINK 1 -->
INAHLT des "LINK 1"
<< Zurück | Übersicht | Vor >>

Übersicht - sollte klar sein die Übersicht der Kategorie
Zurück - sollte dann wie hier im beispiel Leer sein ;)
Vor - sollte dann der Link zu LINK3 sein ;)

ich hoffe ich habe das nun richtig dagestellt :D

MfG Gunah
 
Zuletzt bearbeitet:
ja das funktioniert wie andy72 es gesagt hat.
mit einer sql abfrage mit limit.
wenn du nur ein teil angezeigt haben willst änderst du eben die $anzahl.

du kannst es aber auch mit

PHP:
$id = intval($_GET['id']);
$sql = "SELECT id, /*usw.*/ FROM bilder WHERE id = ".$id." LIMIT 1";
versuchen.

Oder spricht dagegen was?

der weiter button funktiert dann mit:
PHP:
echo '<a href="pics.php?id='.$id+1.'">Weiter</a>';
// Zurück natührlich andersherum
 
Zuletzt bearbeitet von einem Moderator:
Zurück