![]() |
[PHP/MySQL]News system mit seiten
Meine Homepage hat jetzt ein neues Design damit das jetzt noch übersichtlich bleib bei den News will ich mehrere Seiten haben wie in ein Forum.
Code vom News System: <? session_start(); include ("checkuser.php"); echo '<div id="mitte" align="center">'; include ("includes/db_config.php"); $sql = "SELECT * FROM news ORDER BY ID DESC"; $db_erg = mysql_query( $sql ); if ( ! $db_erg ) { die('Ungültige Abfrage: ' . mysql_error()); } echo 'News:'."<br>"; echo '<p></p>'; while ($zeile = mysql_fetch_array( $db_erg, MYSQL_ASSOC)) { echo '<strong>'.'Autor: '.'</strong>'.$zeile['autor'].'<br>'; echo '<strong>'.'Title: '.'</strong>'.$zeile['titel']; echo '<p>'.$zeile['news'].'<p>'; echo $zeile['datum'].'<br>'; echo "<a href='forum/news_forum/view_topic.php?id=". $zeile['ID']. "'>Kommentar schreiben</a>".'<br>'; echo'<p></p>'.'<br>'; } echo '</div>'; echo '</div>'; mysql_free_result( $db_erg ); ?> Ich will das nur 5 News pro Seite angezeigt werden ! Wie mache ich das jetzt ? |
Wenn du möchtest werde ich dir weiterhelfen wie bei deinem letzten Thema.
Ich werde dir heute abend eine Persönliche Nachricht schreiben...jetzt habe ich keine Zeit. Aber schon mal für den Anfang...ermittel zuerst mal wieviel Datensätze es sind und baue dir schon mal eine Linkleiste mit den Seitenzahlen. ;) Gruß januschka |
ok Danke
|
Mach einfach folgendes:
mittels Code:
SELECT count(*) as Anzahl FROM news Dann übergibst du mittels der URI (z.b. &seite=2 -> $_GET["Seite"]) deine Seitezahl und fügst deiner MYSQL abfrage noch den Punkt Code:
LIMIT " . ($_GET["Seite"]*5) . ", " . ($_GET["Seite"]*5+5) |
Ist aber ne ganz schlechte Lösung.
Mit floor() rundest du auch nicht auf sondern ab..man rundet mit ceil() auf. Wo ist in deinem S***** die Linkleiste für die Seiten ? und mit $_GET würde ich es schon gar nicht machen nur mit $_POST. Warum jedesmal beim Seitenauruf eine Datenbankabfrage ? Mit deiner Abfrage nach: Code:
SELECT count(*) as Anzahl FROM news aus einer spalte nicht aus allen spalten einer tabelle. man sollte sich schon angewöhnen sauber zu programmieren und unnötige datenbank-abfragen zu vermeiden...man überlege wenn 1000 oder 100.000 user auf ein mal das s***** nutzen. Zitat:
Code:
SELECT count(*)AS Anzahl, * FROM news ORDER BY ID DESC |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:11 Uhr. |
Powered by vBulletin® (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.