muth Geschrieben 14. April 2004 Autor Geschrieben 14. April 2004 Hi, DANKE! Es wäre zwar nicht nötig gewesen - ich hab einfach so geschrieben, dass ich dies noch machen muss. War halt nen bissl unverständlich geschrieben von mir...! Natürlich trotzdem danke! Lg Sebastian
kills Geschrieben 14. April 2004 Geschrieben 14. April 2004 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>"; }
muth Geschrieben 18. April 2004 Autor Geschrieben 18. April 2004 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
muth Geschrieben 19. April 2004 Autor Geschrieben 19. April 2004 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
robotto7831a Geschrieben 19. April 2004 Geschrieben 19. April 2004 Hallo, du solltest $seite mal durch $_GET['seite'] ersetzen. Frank
muth Geschrieben 19. April 2004 Autor Geschrieben 19. April 2004 Hi, wie meinst du das??? Ich hab doch dies bei dem Beispiel davor doch auch nicht gemacht und es funktioniert...?!? Gruß Sebastian
robotto7831a Geschrieben 19. April 2004 Geschrieben 19. April 2004 In deinem zweiten Codebeispiel fragst Du einmal nach $seite und ein bisschen tifer auf $_GET['seite'] ab. Wenn Du den Parameter seite abfragen willst, dann mußt Du mit $_GET['seite'] arbeiten. $seite Frank
muth Geschrieben 19. April 2004 Autor Geschrieben 19. April 2004 Hmmm! Du meinst doch das, oder? if ($seite < 1) { $seite = 1; }[/PHP] Wenn ich das ändere, geht trotzdem nicht...! Sebastian
robotto7831a Geschrieben 19. April 2004 Geschrieben 19. April 2004 Probier es mal so. if ($_GET['seite'] < 1) { $_GET['seite'] = 1; } $seitenanzahl = $_GET['seite'] * 15; [/php] Frank
muth Geschrieben 19. April 2004 Autor Geschrieben 19. April 2004 Hallo, wie gesagt: Funktioniert leider nicht! Bin schon am Verzweifeln...! Gruß Sebastian
robotto7831a Geschrieben 20. April 2004 Geschrieben 20. April 2004 Sprichst Du eigentlich von dem ersten oder dem zweiten Codebeispiel? Frank
kills Geschrieben 20. April 2004 Geschrieben 20. April 2004 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!
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden