re: gästebuch / mehrere seiten

masterspot

Grünschnabel
hi

ich habe mir das Tut http://www.tutorials.de/tutorials6083.html
zur Hilfe genommen und auch eingebaut ...
aber wenn ich es aufrufen will bekomm ich nen syntax error zurück
und zwar die Zeile 18 betreffend
PHP:
if ($ende>$number) { $ende = $number }
kann mir jemand sagen wo da der Fehler genau liegt ... ich seh den leider net!

gruß spotty
 
Zuletzt bearbeitet:
Auch wenn ich mir das Tutorial jetzt nicht angeguckt habe würde ich es mal so probieren:


PHP:
if ($ende>$number) { $ende = $number; }

Semikolon ist wichtig ;)
 
Hallo,

ich geb dir mal ein paar Code Beispiele. Wenn du die nun noch an deine Sachen anpasst, dann hast du es schon fast geschafft :-)

PHP:
$seite = $_GET["seite"];  //Abfrage auf welcher Seite man ist
//Wenn man keine Seite angegeben hat, ist man automatisch auf Seite 1
if(!isset($seite))
   {
   $seite = 1;
   }
$eintraege_pro_seite = 20;
//Ausrechen welche Spalte man zuerst ausgeben muss:
$start = $seite * $eintraege_pro_seite - $eintraege_pro_seite;


PHP:
					$sql = "SELECT
								beschreibung,
								url,
								datum,
								id
							FROM
								deine Tabelle
								ORDER BY
								datum DESC
									LIMIT $start, $eintraege_pro_seite
							";
					$return = mysql_query($sql) OR die(mysql_error());
					?>
                                  <?php
					while($_data = mysql_fetch_assoc($return))
					{
						?>
                                  <?php
$result = mysql_query("SELECT id FROM deine Tabelle in der DB ");
$menge = mysql_num_rows($result);
$wieviel_seiten = $menge / $eintraege_pro_seite;
?>


PHP:
                                     <?php echo "<div align=\"center\">";
echo "<b>Seite:</b> ";
for($a=0; $a < $wieviel_seiten; $a++)
   {
   $b = $a + 1;
   //Wenn der User sich auf dieser Seite befindet, keinen Link ausgeben
   if($seite == $b)
      {
      echo "  <b>$b</b> ";
      }
   //Aus dieser Seite ist der User nicht, also einen Link ausgeben
   else
      {
      echo "  <a href=\"?seite=$b\">$b</a> ";
      }
   }
echo "</div>";

?>

Gruß jaylibII
 
kniedel hat gesagt.:
Auch wenn ich mir das Tutorial jetzt nicht angeguckt habe würde ich es mal so probieren:


PHP:
if ($ende>$number) { $ende = $number; }

Semikolon ist wichtig ;)

ja danke ... genau das war es ... hehe
ich hatte mir schon so etwas gedacht aber ich wusste auch net wo das da hin sollte ...
aber noch mals danke


spotty
 
hi hi ...

ja die Einfrage hat sich damit geklärt aber eine Neue ist wieder aufgekommen ... leider :(

ich hab den Code aus dem Tut. übernommen, da er ja jetzt ging und versucht ihn in meine Datei
mit einzubinden.
Die Datei ist hier zusehen http://www.tutorials.de/tutorials202797.html

und zwar hab ich das
PHP:
$sql = "SELECT * FROM guestbook";
$result = mysql_query($sql,$cnx);
$number = mysql_num_rows($result);
$seiten=ceil($number/$proseite);
$start=$page * $proseite;
$sql="SELECT * FROM guestbook LIMIT $start,$proseite";
$result = mysql_query($sql,$cnx);
$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";

dazwischen eingetragen
PHP:
<?php

$query = mysql_query("SELECT * FROM guestbook order by id DESC");

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

nach der schließenden "}" von der while Schleife.

nun ist es so das er aber er die Aufteilung auf die mehrern Seiten nicht macht.
Also die weiteren seiten werden erzeugt, aber die augelesenen Datensetze werden immer
noch auf eine Seite geschrieben.

Spotty
 
Hallo,

es kann sein dass ich schon wieder etwas zu Müde bin für das gnaze hier aber wo legst du fest wieviele Einträge Pro Seite er ausgeben soll? Das kann ich aus dem was du geschrieben hast nicht erkennen.

Gruß jaylibII
 
mhh ja das soll vorkommen ...wenn man viel zu tun hat ;-)


wieviele Einträge pro Seite leg ich gleich ganz oben mit fest.
PHP:
include("connect.php");

$proseite=5;

ich hab das Tut-script so getestet wie es angeboten wurde und da ging es ja, aber jetzt wo ich es über tragen hab ... will es nimma :-(
 
Hallo,

tja Studium und Job das ist einfach etwas viel. Aber ist ja auch egal. Versuch es einfach mal so bitte:

PHP:
<?php

include("connect.php");

$seite = $_GET["seite"];  //Abfrage auf welcher Seite man ist
//Wenn man keine Seite angegeben hat, ist man automatisch auf Seite 1
if(!isset($seite))
   {
   $seite = 1;
   }
$eintraege_pro_seite = 20;
//Ausrechen welche Spalte man zuerst ausgeben muss:
$start = $seite * $eintraege_pro_seite - $eintraege_pro_seite; 
?>          

<body bgcolor="#e9e9e9"> <a href="input.php">neuer eintrag</a>

<?php

$query = mysql_query("SELECT * FROM guestbook order by id DESC");
while($data = mysql_fetch_array($query))
{

$result = mysql_query("SELECT id FROM deine guestbook in der DB ");
$menge = mysql_num_rows($result);
$wieviel_seiten = $menge / $eintraege_pro_seite;

$name = $data[name];
$email = $data[email];
$homepage = $data[website];
$mitteilung = $data[content];
$datum = $data[date];

?>

<p align='center'>
<table width="40%" border="0" cellspacing="0" cellpadding="2">
  <tr>
    <td bgcolor="silver" height="20"><b><?php echo"$name"; ?></b> schrieb am <i><?php echo"$datum"; ?></i></td>
  </tr>
  <tr>
    <td><?php echo"$mitteilung"; ?></td>
  </tr>
  <tr>
    <td bgcolor="silver" height="18"><a href="mailto:<?php echo"$email"; ?>">E-Mail
schreiben</a> oder diese Homepage besuchen: <?php echo"$homepage"; ?></td>
  </tr>
</table></p>

<?php
}
?>

<?php echo "<div align=\"center\">";
echo "<b>Seite:</b> ";
for($a=0; $a < $wieviel_seiten; $a++)
   {
   $b = $a + 1;
   //Wenn der User sich auf dieser Seite befindet, keinen Link ausgeben
   if($seite == $b)
      {
      echo "  <b>$b</b> ";
      }
   //Aus dieser Seite ist der User nicht, also einen Link ausgeben
   else
      {
      echo "  <a href=\"?seite=$b\">$b</a> ";
      }
   }
echo "</div>";

?> 

</body>

Gruß jaylibII
 
Zurück