Zum Inhalt springen

Problem mit Gästebuch


Empfohlene Beiträge

Original geschrieben von kills

versuch das ma:


$iMaxSites = $iMaxRows % 15;
for ( $i = 0; $i < $iMaxSites; $i++) {
echo "<a href='meineSeite.php?seite=". $i ."'>Seite ". $i . "</a><br>";
}
[/PHP]

[/b]

so mus richtig heißen:

[PHP]
$iMaxSites = ceil( $iMaxRows / 15);
for ( $i = 0; $i < $iMaxSites; $i++) {
echo "<a href='meineSeite.php?seite=". $i ."'>Seite ". $i . "</a><br>";
}

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi,

sorry, dass ich mich jetzt erst melde. Hab aber am Donnerstag die Weisheitszähne gezogen bekommen...;)! Hier ist der Codeausschnitt, der funktionier. Das vorher hat komischerweise nicht funktioniert...:confused: ! Aber egal - nun funktioniert es! Nochmal Danke an alle!

$iMaxSites = ceil( $anzahl / 6);
for ( $i = 0; $i < $iMaxSites;) {
$i++;
echo "<a href='gaestebuch.php?seite=". $i ."'>[Seite ". $i . "]</a> ";[/PHP]

Bis dann!

Sebastian

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi,

ich bins nochmal! Ich hab nun das gleiche Problem bei einem Forum!

Ich möchte alle 15 Beiträge eine neue Seite anzeigen lassen.

Unter http://www.sebastian-muth.de/chili/htm/forum.php funktioniert es. Hier der Codeausschnitt dazu:

<?php
$host = "xyz";
$name = "xyz";
$passwort = "xyz";

$sql = mysql_connect($host, $name, $passwort);
$dbname = "xyz";
mysql_select_db($dbname);

if ($seite < 1) {
$seite = 1;
}

$seitenanzahl = $seite * 15;
$seitenanzahlminus = $seitenanzahl - 15;

$res = mysql_query( "select count(*) from `forum_themen`" );
$row = mysql_fetch_row($res);
$anzahl = $row[0];


$anfrage = mysql_query( "SELECT themenid,titel,autor,datum,antworten FROM `forum_themen` ORDER BY datum DESC LIMIT $seitenanzahlminus, $seitenanzahl" )
or die ( "Konnte Forumthema nicht anzeigen: ".mysql_error() );
while ($datensatz = mysql_fetch_object($anfrage) AND $i <= 15){
$i = $i + 1;
print "<img src=\"../img/pfeil.gif\" width=\"5\" height=\"9\">  <a href=\"forum_anzeigen.php?themenid=$datensatz->themenid&seite=$seite\">$datensatz->titel</a>   <font size=\"1\"><font color=\"##666666\">von $datensatz->autor am $datensatz->datum mit $datensatz->antworten Antwort(en)</font></font><br>";
}

$iMaxSites = ceil( $anzahl / 15);
for ( $i = 0; $i < $iMaxSites;) {
$i++;
echo "<br><a href='forum.php?seite=". $i ."'>[Seite ". $i . "]</a> ";
}
mysql_close($sql);
?>[/PHP]

So, und wenn ich auf der Seite dann ein Thema anklicken geht, dann geht es nicht. Er zeigt mir nicht die Seite 1 an...! Könnt ihr mir sagen warum??? Wär echt nett! Natürlich hier wieder der Codeausschnitt:

[PHP]<?php
$host = "xyz";
$name = "xyz";
$passwort = "xyz";

$sql = mysql_connect($host, $name, $passwort);
$dbname = "xyz";
mysql_select_db($dbname);

if ($seite < 1) {
$seite = 1;
}

$seitenanzahl = $seite * 15;
$seitenanzahlminus = $seitenanzahl - 15;

$res = mysql_query( "select count(*) from `foren_threads`" );
$row = mysql_fetch_row($res);
$anzahl = $row[0];


$anfrage = mysql_query( "SELECT threadid,themenid,titel,autor,text FROM `forum_threads` WHERE themenid = $_GET[themenid] LIMIT $seitenanzahlminus, $seitenanzahl" )
or die ( "Konnte Forumthread nicht anzeigen: ".mysql_error() );
while ($datensatz = mysql_fetch_object($anfrage)){
$i = $i + 1;
print "<img src=\"../img/pfeil.gif\" width=\"5\" height=\"9\">  <b>Betreff:</b> $datensatz->titel   <font size=\"1\"><font color=\"##666666\">von $datensatz->autor</font></font><br><br>";
print "<b>Nachricht:</b> $datensatz->text<br>";
print "<hr size=\"1\"><br>";
}

$iMaxSites = ceil( $anzahl / 15);
for ( $i = 0; $i < $iMaxSites;) {
$i++;
echo "<br><a href='forum_anzeigen.php?seite=". $i ."'>[Seite ". $i . "]</a> ";
}
echo " <a href=\"forum.php?seite=$_GET[seite]\">[zurück...]</a>";
mysql_close($sql);
?>

Nochmal Danke im Vorraus...;)!

Lg

Sebastian

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von muth


echo " <a href=\"forum.php?seite=$_GET[seite]\">[zurück...]</a>";
mysql_close($sql);
[/PHP]

hier unten muss es so heißen:

[PHP]
echo " <a href=\"forum.php?seite=". $_GET['seite'] ."\">[zurück...]</a>";
mysql_close($sql);

und wenn du deine scripts serverunabhängig halten willst, solltest du bei zugreifen auf Arrays den index immer mit "" oder mit '' angeben!

Bsp:

so:

$_GET["seite"] o.

$_GET["seite"]

aber nicht so:

$_GET[seite] <= sowas geht soweit ich weiss nur beim apache.

und das was palvoelgyi meint, nennt sich register globals!

heisst, dass du parameter, die per url oder per formular übergeben wurden seit PHP vers. 4.(?).(?) nicht mehr standardmäßig zugreifen kannst.

Paramter einer URL befinden sich im array $_GET und paramter die per formular kommen (vorraussetzung methd='post') ist im $_POST array vorhanden.

Dies wurde zur verbesserungen der sicherheit von php script eingeführt, und sollte auch eingehalten werden, da die default einstellung für "register_globals" auf "Off" steht!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...