1Danke
ERLEDIGT
JA
JA
ANTWORTEN
8
8
ZUGRIFFE
666
666
EMPFEHLEN
-
Hallo,
ich mal wieder, bin noch ziemlich neu in dem Bereich daher bitte ich um Nachsicht
Ich habe jetzt folgenden Code:
Jetzt ist meine Frage:PHP-Code:<?php include("header.php");?>
<?php if(!isset($_SESSION['uname'])){
echo"Dieser Bereich ist nur für eingeloggte Mitglieder sichtbar!";
}else{
if(isset($do)=="") $do="list";?>
<?php
if($do=="list"){
$sql = "SELECT * FROM beats ORDER BY id";
$abfrage = mysqli_query($verbindung, $sql);
echo"Überschrift<br><br>";
while($beats = mysqli_fetch_assoc($abfrage)){
echo"<font color='#b8860b'>{$beats['id']}</font>";
echo"<font color='#b8860b'>{$beats['uname']}</font>";
echo"<font color='#b8860b'>{$beats['bname']}</font>";
echo"<br>";
}
echo"<br>";
echo"<br>";
echo"<br>";
echo"Hier der Link zum Upload!";
}
}?>
<?php include("footer.php");?>
Wie kann ich die Ausgabe auf eine maximale Zahl z. B. 25 pro Seite begrenzen und eine dynamische Linkleiste erzeugen die je nach Anzahl der vorhandenen Daten in der Datenbank ausgibt wieviele Seiten vorhanden sind?
Kann mir da jemand weiterhelfen?Geändert von Divo1984 (06.10.10 um 14:38 Uhr)
-
Am besten suchst du dir ein Tutorial. Ich hab grad keine Lust einen grossartigen Code hier zu erstellen.
Bei der DB-Abfrage kannst du mit LIMIT den Bereich engrenzen.
Hier habe ich mal vor langem ein Coder allgemeiner Natur erstellt. ev. kannst du damit etwas anfangen
http://wiki.yaslaw.info/wikka/PhpJumpNavigator
Und hier ist das Script als Beispiel
http://yaslaw.info/example/navigator.php
PS: Du kannst meine Klasse Navigator übenrehmen und mit der DB-Resultaten füttern---------------------------------------------------------------------------------------------------
item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
item: Tutorial: [PHP][MySQL] Debug Queries
item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben
-
06.10.10 14:42 #3
Für die Begrenzun kann man den LIMIT-Befehl verwenden.
Und für die Anzahl aller Datensätze kannst du folgenden Befehl verwenden:
Code sql:1
SELECT COUNT(*) FROM your_table
Sehe gerade, yaslaw hat schon geantwortet. Naja zu langsam.mfg ComFreek
Falls ich dir geholfen habe, würde ich mich über ein DANKE freuen!
Kenn mich am besten aus in C++, WEB-Sprachen (PHP, HTML, JavaScript) und vllt. mehr
[PHP] Überprüfen, ob Website erreichbar • Sicherheit in PHP-Codes schaffen • Google Chrome-Extension für tutorials.de • json_compress()
-
Ich danke euch für eure schnellen Antworten, ich denke das hilft mir weiter! Dankö
-
So ich habe das mit der Begrenzung jetzt hinbekommen, das war ja noch leicht!
@yaslaw der Code bringt mir grad net viel
Und ein Tutorial finde ich auch net
das was ich jetz noch brauche ist eine "Linkleiste" die halt dynamisch reagiert wieviele Einträge in der Datenbank sind!
Sind z. B. <= 25 Einträge drin, brauche ich nur nen Link "1" sollten aber mehr als 25 Einträge in der DB sein brauche ich nen zweiten Link "2", bei mehr als 50 "3" usw...
Wie kann ich das verwirklichen?
-
Wenn du auf LIMIT verzichten willst, dann kannst du meine Klasse so anwenden
Sorry, hab grad keine Lust eine ganze Anleitung für MySQL-Navigationen zu schreiben.PHP-Code:<?php
//Einbinden der Navigation-Klasse
include_once('navigator.php');
//Settings
define('C_ITEM_PER_PAGE', 25);
define('C_NAV_RANGE', 4);
define('C_GET_NAV_PARAM', 'pageNr');
//$_GET auswerten
$currentPageNr = $_GET[C_GET_NAV_PARAM];
if (!$currentPageNr) $currentPageNr = 0;
//TODO DB-Daten auslesen: Kein LIMIT verwenden, sondern alle Daten auslesen
//Ich simuliere hier mal die Resultate mit $x Einträgen
$rowCount = 30;
for($i = 0; $i < $rowCount; $i++){
$rows[$i] = "Eintrag #{$i}";
}
//Navigator erstellen
$nav = new Navigator(count($rows), basename(__FILE__), C_ITEM_PER_PAGE, C_NAV_RANGE, C_GET_NAV_PARAM);
$navBar = $nav->jump($currentPageNr);
//Erste anzuzeigende ID auslesen
$firstId = $nav->getFirstItemNrFromPageNr($currentPageNr);
//Dei entsprechenden Zeilen aussuchen
$selectedRows = array_slice($rows, $firstId, C_ITEM_PER_PAGE);
//Datenausgabe
echo $navBar;
echo "<hr />";
echo implode('<br />', $selectedRows);
echo "<hr />";
echo $navBar;
?>
Nachtrag:
Oder halt einfach googeln nach 'tutorial php mysql page'. Ergibt bei den ersten 4 Treffern bereits 3 Tutorials dazu:
http://www.phpjabbers.com/php--mysql...ges-php25.html
http://www.php-mysql-tutorial.com/wi...using-php.aspx
http://www.designplace.org/scripts.php?page=1&c_id=25Geändert von Yaslaw (06.10.10 um 16:18 Uhr)
---------------------------------------------------------------------------------------------------
item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
item: Tutorial: [PHP][MySQL] Debug Queries
item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben
-
Das Thema ist zwar ein bisserl veraltet, aber da ich grad eine DB Umsetzung gemacht habe, hier mal mein Code:
Alles basierend, auf der Class von YaslawPHP-Code:<?php
//Einbinden der Navigation-Klasse
include_once('class_Navigator.php');
//Datenbank und Config
require 'class_MySql.php';
require 'config.php';
//Settings
define('C_ITEM_PER_PAGE', 1000);
define('C_NAV_RANGE', 12);
define('C_GET_NAV_PARAM', 'pageNr');
//$_GET auswerten
if(isset($_GET[C_GET_NAV_PARAM]))
{
$currentPageNr = $_GET[C_GET_NAV_PARAM];
}
else
{
$currentPageNr = 0;
}
$start = ($currentPageNr == 0) ? 0 : ($currentPageNr) * C_ITEM_PER_PAGE;
$mysql=new MySql;
//Verbindung zur DB
$mysql->con($host, $db, $user, $pw);
//Einträge zählen
$mysql->query("SELECT count(id) anz FROM empfaenger");
$anz = $mysql->fetch_row();
$anz = $anz['anz'];
//entsprechende Einträge mit LIMIT aus der DB holen
$mysql->query("SELECT * FROM empfaenger ORDER BY id ASC LIMIT ".$start.", ".C_ITEM_PER_PAGE."");
while($rows=$mysql->fetch_row())
{
//gewählte Daten anzeigen
print $rows['id']. " ".$rows['username']."<br>";
}
//Navigator erstellen
$nav = new Navigator($anz, basename(__FILE__), C_ITEM_PER_PAGE, C_NAV_RANGE, C_GET_NAV_PARAM);
$navBar = $nav->jump($currentPageNr);
//Navigation einblenden
echo "<hr />";
echo $navBar;
?>
-
Warum verwendet ihr nicht die entsprechende SQL Funktion?
Code sql:1 2 3
SELECT SQL_CALC_FOUND_ROWS `spalte 1`, `spalte 1`, ... FROM `Tabelle` LIMIT 0, 25
Code sql:1
SELECT FOUND_ROWS()
Bei COUNT(`id`) müsst ihr aufpassen denn COUNT(`id`) != COUNT(*)
-
Ich verwende count(id) da id mein Primary Key ist und ich somit jede ID zähle! Ist doch ausreichend um zu ermitteln, wieviele Reihen(Einträge) vorhanden sind!
Edit: Ich hätte ebenfalls mysql_NUM_ROWS verwenden können
Geändert von Divo1984 (10.01.12 um 06:10 Uhr)
Ähnliche Themen
-
MySQL Ausgabe sortieren aber HTML-Tags dabei ignorieren
Von medico im Forum Relationale DatenbanksystemeAntworten: 1Letzter Beitrag: 25.04.08, 14:00 -
Ausgabe eienr csv-Datei begrenzen
Von D@nger im Forum PHPAntworten: 10Letzter Beitrag: 22.08.06, 18:46 -
Ausgabe der Zeichen begrenzen...
Von markberg im Forum PHPAntworten: 3Letzter Beitrag: 26.08.05, 21:24 -
Keine Ausgabe bei MYSQL-Abfrage, aber warum ?
Von SirTales im Forum PHPAntworten: 4Letzter Beitrag: 12.06.05, 20:40 -
Ausgabe begrenzen aber wie ?
Von Xsdojo im Forum PHPAntworten: 6Letzter Beitrag: 05.03.04, 07:27





Zitieren

Login






[PHP][Snippet] Array zu XML konvertieren