[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
REDAXO Forum • Pagination class Hilfe beim Blättern (R5.4.0)
Seite 1 von 1

Pagination class Hilfe beim Blättern (R5.4.0)

Verfasst: 11. Nov 2017, 16:54
von cwenet
Hallo,

ich versuche gerade die Pagination Klasse in einem Modul zu verwenden.
https://friendsofredaxo.github.io/trick ... ation.html

Code: Alles auswählen

<?php 
$anzahl = 1;

$page = $_GET[page];

$db_table = "rex_mytable";
$sql = rex_sql::factory();
$sql->setDebug(true); //Ausgabe Query
$sql->setQuery("SELECT * FROM $db_table limit $page, $anzahl");
$total = $sql->getRows();


foreach($sql as $row)
{

if ($row->getValue("titel") != "")
  {
    $titel = $row->getValue("titel");
	echo $titel."<br />";
	$bild = $row->getValue("bild");
	echo '<img src="index.php?rex_media_type=yform_mini&rex_media_file='.$bild.'"><hr />';
  }
  
}
$pagination = new Pagination($total, $page, $limit);

echo $pagination->show();

?>  
Irgendwie will das nicht klappen. Es werden zwar Datensätze ausgegeben beim Blättern, aber auch dieser Fehler: Division by zero
Das Backend ist dann bei diesem Artikel nicht mehr erreichbar.
Die Klasse habe ich hier abgelegt: /redaxo/src/addons/project/lib/

Bitte um Hilfe
Gruß
Christoph

Re: Pagination class Hilfe beim Blättern (R5.4.0)

Verfasst: 12. Nov 2017, 13:19
von cwenet
Guten Tag,

hat mir ja keine Ruhe gelassen. Es läuft fast:

Code: Alles auswählen

<?php 
if(rex::isBackend()) {
echo "Anzahl pro Seite: REX_VALUE[1]";
} else {

$anzahl = "REX_VALUE[1]";

$page = preg_replace( '/[^0-9]/', '0', $_REQUEST[page]); //Nur Zahlen sind erlaubt
if ($page == ""){
	$page = 1;
}


$db_table = "rex_mytable";
$sql = rex_sql::factory();
$sql->setDebug(false);
$sql->setQuery("SELECT * FROM $db_table WHERE status=1");
$total = $sql->getRows();


$sql->setQuery("SELECT * FROM $db_table WHERE status=1 ORDER BY prio ASC limit $page, $anzahl ");


foreach($sql as $row)
{

if ($row->getValue("titel") != "")
  {
    $titel = $row->getValue("titel");
	echo $titel."<br />";
	$bild = $row->getValue("bild");
	echo '<img src="index.php?rex_media_type=yform_mini&rex_media_file='.$bild.'"><hr />';
  }
  
}
$pagination = new Pagination($total, $page, $anzahl);
$pagination->setOption("show_max", 5); // Anzahl der Links, die um die aktuelle Seite angezeigt werden.
$pagination->setOption("show_neighbours", true); // Zeige Zurück/Vor Link
echo $pagination->show();
}
?>  
Nur bekomme ich das mit dem Versatz nicht hin.
Mysql zählt ab Null (0). Die Navigation beginnt aber immer mit page=1.
Selbst wenn ich eine Korrektur vornehme und immer 1 abziehe, passt dann die Navigation wieder nicht.
Sehe den Wald vor lauter Bäumen nicht.

Bitte um Hilfe.
Schönen Sonntag
Christoph

Re: Pagination class Hilfe beim Blättern (R5.4.0)

Verfasst: 31. Jan 2018, 11:35
von ska
@cwenet (Wie) hast du es denn inzwischen lösen können? Mir ist nämlich auch noch nicht ganz klar, wie man die Pagination-Klasse richtig einsetzt…

Re: Pagination class Hilfe beim Blättern (R5.4.0)

Verfasst: 31. Jan 2018, 19:38
von cwenet
Hallo Ska,
bis jetzt habe leider immer noch keine Lösung.

Schönen Abend
Ich hoffe noch auf Hilfe

Re: Pagination class Hilfe beim Blättern (R5.4.0)

Verfasst: 12. Sep 2019, 19:16
von alexplus