Frage zu Tutorial " Ausgabe eines Gästebuchs auf mehrere Seiten verteilen"

du musst ceil nehmen, kleines bsp:

du hast 11 artikel und pro seite sollen 2 artikel angezeigt werden.

11:2=5,5

mit floor hättest du 5 Seiten, mit ceil 6

und du brauchst auch 6 seiten. auf 5 werden jeweils 2 artikel angezeigt und auf der seite nummer 6 dann nurnoch einer.
 
da habe ich auch mein problem mit, die variable page ist nicht definiert, was beworkt sie, ich habe das versucht mit der beschreibung aber $page verstehe ich auch nicht.
 
Tach,

die Variable $page ist die Seitenzahl die aufgerufen wird.

Beispiel:
.../anzeigen.php?page=2

Darüber wird ihr ein Wert zugewiesen. Um in der Darstellung die Seitenanzahl zu erhöhen, recht es die Variable um 1 zu erhöhen.

Beispiel:
$seite=$page+1;

Einfach in der Ausgabe bie Variablen tauschen.

Wenn es nicht klappt, wieder melden.

Grüsse setnder23
 
hm... danke erstmal für deine schnelle antwort.

ich habe mir ein gästebuch mit hilfe eines tutorials (http://php-q.net/) gemacht. da wurde aber das zählen und ausgeben von bestimmten einträgen pro seite nicht behandeln, nun wollte ich dies nachrüsten. naja alles eingegeben, aber mir wird immer wieder gesagt, die variable page sei nicht definiert. vll kannst du mir weiter helfen?

gruß hey3000
 
Wenn du in der URL hinter dem Dateinamen "?page=1" eingibst, ist die Variable eigentlich deklariert.
Ohne Code ist es aber schwer dir weiter zu helfen!

Grüsse stender23
 
hallo ihrs,

also irgendwie kommt mir der Tread doch bekannt vor :o\

hab da doch neulich den Code schon so umgeschrieben das das GB bei der Seite 1 anfängt und nicht bei 0.!

Das mit dem Ceil(); ist eine Lüge, wenn dann funktioniert das Script nur mit floor(); richtig.
Erklärung, wenn du 22 Einträge im GB hast, das dann durch 10 teilst bleiben 2,2 sprich 2 Seiten + Seite 0 du siehst also nur mit floor() (abrunden) alle, mit ceil() kannste unter umständen ne Seite zuviel angezeigt kriegen.

Aber da ich das alles schonmal erklärt habe einfach suchen!

So ums einfacher zu machen:

http://www.tutorials.de/forum/showthread.php?t=184120
 
Zuletzt bearbeitet:
Im folgenden steht mein ursprünglicher quellcode, noch ohne die "blätter-funktion":


<?php
error_reporting(E_ALL);

include 'config.inc.php';

@mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS) OR die(mysql_error());
mysql_select_db(MYSQL_DATABASE) OR die(mysql_error());

$sql = "SELECT name,datum,mail,hp,mess FROM gb ORDER BY datum DESC";
$result = mysql_query($sql) OR die(mysql_error());

while($row = mysql_fetch_assoc($result)) {
echo "<tr><td width=\"150\" height=\"20\" bgcolor=\"#eeeeee\"><p><b>".$row['name']."</b></p></td>\n";
echo "<td valign=\"center\" height=\"20\" bgcolor=\"#eeeeee\">\n";
if(trim($row['mail']) == "") {
echo $row['name'];
} else {
echo "<a href=\"mailto:".$row['mail']."\"><img src=\"images/notify.png\" border=\"0\" height=\"15\" width=\"15\"></a>\n";
}
if(trim($row['hp']) != "") {
if(strtolower(substr($row['hp'], 0, 7)) == "http://") {
echo "<a href=\"".$row['hp']."\" target=\"_blank\"><img src=\"images/link.png\" border=\"0\" height=\"15\" width=\"15\"></a>";
} else {
echo "<a href=\"http://".$row['hp']."\" target=\"_blank\"><img src=\"images/link.png\" border=\"0\" height=\"15\" width=\"15\"></a>";
}
}

echo "</td>\n";
echo "<td align=\"right\" height=\"20\" bgcolor=\"#eeeeee\"><p>".$row['datum']."</p></td></tr>\n";
include "smilies.php";
echo "<tr><td colspan=\"3\"><p>".strtr(nl2br($row['mess']), $smilies)."</p></td></tr>\n";
echo "<tr><td height=\"10\"></td></tr>\n";
}
?>
 
hehe aber vll brauchst du doch ehr den code mit der besagten funktion, ich bin noch ein sehr sehr blutiger anfänger, also habe ich bestimmt etwas total falsch gemacht :S :

<?php
error_reporting(E_ALL);

include 'config.inc.php';

@mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS) OR die(mysql_error());
mysql_select_db(MYSQL_DATABASE) OR die(mysql_error());

$sql = "SELECT name,datum,mail,hp,mess FROM gb ORDER BY datum DESC";
$result = mysql_query($sql) OR die(mysql_error());

$number = mysql_num_rows($result);
$seiten=floor($number/$proseite);
$start=$page * $proseite;
$sql="SELECT * FROM gb LIMIT $start,$proseite";
$result = mysql_query($sql) OR die(mysql_error());
$ende = $start + $proseite;
if ($ende>$number) { $ende = $number }
echo "Zur Zeit sind $number Einträge im Gästebuch <BR> \n";
echo "Seite $page - Einträge von $start bis $ende <BR> \n";

while($row = mysql_fetch_assoc($result)) {
echo "<tr><td width=\"150\" height=\"20\" bgcolor=\"#eeeeee\"><p><b>".$row['name']."</b></p></td>\n";
echo "<td valign=\"center\" height=\"20\" bgcolor=\"#eeeeee\">\n";
if(trim($row['mail']) == "") {
echo $row['name'];
} else {
echo "<a href=\"mailto:".$row['mail']."\"><img src=\"images/notify.png\" border=\"0\" height=\"15\" width=\"15\"></a>\n";
}
if(trim($row['hp']) != "") {
if(strtolower(substr($row['hp'], 0, 7)) == "http://") {
echo "<a href=\"".$row['hp']."\" target=\"_blank\"><img src=\"images/link.png\" border=\"0\" height=\"15\" width=\"15\"></a>";
} else {
echo "<a href=\"http://".$row['hp']."\" target=\"_blank\"><img src=\"images/link.png\" border=\"0\" height=\"15\" width=\"15\"></a>";
}
}

echo "</td>\n";
echo "<td align=\"right\" height=\"20\" bgcolor=\"#eeeeee\"><p>".$row['datum']."</p></td></tr>\n";
include "smilies.php";
echo "<tr><td colspan=\"3\"><p>".strtr(nl2br($row['mess']), $smilies)."</p></td></tr>\n";
echo "<tr><td height=\"10\"></td></tr>\n";
}



if ($page>0) {
$i=$page-1;
echo "<A HREF=\"guestbook.php?page=$i\">&lt;previous</A>";
}
for($i=0; $i<=$seiten; $i++) {
if ($i==$page) {
echo $i."&nbsp;";
}
else {
echo "<A HREF=\"guestbook.php?page=$i\">$i</A>&nbsp;";
}
}
if ($page<$seiten) {
$i=$page+1;
echo "<A HREF=\"guestbook.php?page=$i\">next&gt;</A>";
}
?>



gruß hey3000
 
Zurück