seitenweise blättern -> next page leer

Wolf of Doom

Erfahrenes Mitglied
Hi

und zwar wenn ich mir ne liste aus der datenbank anzeigen lassen möchte und auf die nächste page springe ist diese leer und wenn ich es ohne
PHP:
index.php?cat=include&file=
laufen lasse dann gehts


PHP:
 <?php
if(!isset($cat)) {
$cat = "include";
}
if (!isset($file)) {
$file = "main";
}
include($cat."/".$file.".php");
?>
wie kann ich es machen, das es auch mit index.php?cat=include&file= geht,

cYa
WoD
 
Also, mit "die Seite ist leer" meinst du bestimmt, dass das Script die .php-Datei nicht includet?
Vielleicht solltest du bei &file= mal etwas angeben (&file=dateiname) (falls du das noch nicht gemacht hast.
Und wenn du es auch leer stehen lassen willst, sollte dien script so aussehen:

PHP:
<?php 
if(!isset($cat) || $cat == "") $cat = "include";
if (!isset($file) || $file == "") $file = "main";

include($cat."/".$file.".php"); 
?>
 
Da kann man aber nicht grad viel erkennen!
Stimmt denn die MySQL-Query, die die Übergabe auswertet?
Stört da evtl. das "&?" ?
 
Zuletzt bearbeitet:
ich poste mal das ganze script

PHP:
<html>
<head>
<title>Tabelleninhalt seitenweise anzeigen</title>
<link href="style.css" rel="stylesheet" type="text/css">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
</head>
<body>
<?
include("datenbank.php");
$ZeilenProSeite=25;

if(!empty($suchbegriff)) {
$suchbegriff=strtoupper($suchbegriff);
}

if(empty($Anfangsposition)) {
$Anfangsposition=0;
}

if(!empty($sql)) {
$sql=str_replace("\\","",$sql);
} else {
$sql="select * from movie where name like '$suchbegriff%'";
}
$sql2="select * from movie where name like '$suchbegriff'";
$result=mysql_query($sql);
$Anzahl=mysql_num_rows($result);

$sql1="$sql limit $Anfangsposition,$ZeilenProSeite";
$sql=urlencode($sql);
?>
<pre><table class="table" valign="top" width="75%" border="0">
<tr><br><font face='verdana' size='1px'>
<td><b>CD-Nr.</b></td>
<td><b>Name</b></td>
<td><b>Format</b></td>
<td><b>CDs</b></td>
<td><b>Genre</b></td>
<td><b>FSK</b></td>
<td><b>Status</b></td>
<td><b>Bes.</b></td>
</tr></font>
  <?
  $result = mysql_query($sql1);
  while($row=mysql_fetch_array($result,MYSQL_ASSOC)) {
  ?>
<br><font face='verdana' size='1px'>
<tr>
<td><? echo $row["nr"] ?></td>
<td><a href="index.php?cat=include&file=details&nr=<? echo $row["nr"] ?>"><? echo $row["name"] ?></td></a>
<td><? echo $row["format"] ?></td>
<td><? echo $row["cds"] ?></td>
<td><? echo $row["genre"] ?></td>
<td><? echo $row["fsk"] ?></td>
<TD><center>
<?  if($row['verliehen']== "1")
  	    {
  	    echo "<img src='img/verliehen.GIF'>";
  		    }
  	  else
  	    {
  	 echo "<img src='img/vorhanden.GIF'>";
  	    }?></td>
<td>
 <? if($row['bestellt'] == "0")
			    {
				echo "<img src='img/verliehen.GIF'>";
				    }
			  else
			    {
			 echo "<img src='img/vorhanden.GIF'>";
	    } ?></td></center>
 </tr>
 </pre>
 <?   }?>

</table>

<!-- Hier werden die Links zum Blättern erzeugt,
     falls geeignete Datensätze gefunden wurden -->

<? if ($Anzahl > 0) {?>
<TABLE WIDTH="100%">
  <TR>
    <TD WIDTH="20%">
    <?
    if($Anfangsposition > 0) {
    // Anfang und zur&uuml;ck
    echo "<a href= \"result_name&?Anfangsposition=0&sql=$sql\">Anfang</a>&nbsp;";
    $back=$Anfangsposition-$ZeilenProSeite;
        if($back < 0) {
        $back=0;
        }
    echo "<a href=\"result_name&?Anfangsposition=$back&sql=$sql\"><</a>&nbsp;";
    }
    ?>
    </TD>
    <TD WIDTH="60%">
    <?
    // Links zum Bl&auml;ttern
    $Seiten=intval($Anzahl/$ZeilenProSeite);

        if($Anzahl%$ZeilenProSeite) {
        $Seiten++;
        }

        for($i=1;$i<=$Seiten;$i++) {
        $fwd=($i-1)*$ZeilenProSeite;
            if($Anfangsposition/$ZeilenProSeite+1==$i) {
            echo "&nbsp;<a href=\"index.php?cat=include&file=result_number&?Anfangsposition=$fwd&sql=$sql\"><FONT face='verdana' size='1px' COLOR=\"#000000\">$i</FONT></a>";
            } else {
            echo "&nbsp;<a href=\"index.php?cat=include&file=result_number&?Anfangsposition=$fwd&sql=$sql\"><FONT face='verdana' size='1px' COLOR=\"#000000\">$i</FONT></a>";
            }

            // Links pro Zeile
            if($i%25==0) {
            echo "<br>";
            }
        }
    echo "&nbsp;";
    ?>
    </TD>
    <TD WIDTH="20%" ALIGN="RIGHT">
    <?
    if($Anfangsposition < $Anzahl-$ZeilenProSeite) {
    // weiter und Ende
    $neueAnfangsposition=$Anfangsposition+$ZeilenProSeite;
    echo "<a href=\"index.php?cat=include&file=result_number&?Anfangsposition=$neueAnfangsposition&sql=$sql\">></a>&nbsp;";
    echo "<a href=\"index.php?cat=include&file=result_number&?Anfangsposition=$fwd&sql=$sql\">Ende</a>&nbsp;";
    }
    ?>
    </TD>
  </TR>
</TABLE>
<? } ?>
</body>
</html>
vielleicht fällt es dir dann leichter den fehler zu finden

cYa

WoD
 
Naja, bei dem ganzen HTML ist es doch sehr unwahrscheinlich, dass die Seite komplett weiss ist, oder?!
Das kann also nur eins bedeuten (hoffe ich):
Irgendwas wird falsch verlinkt.
Und das scheint mir auch bei "Anfang" und "<" zu sein?!
 
Häh?!
Lag' es jetzt daran?
Und was meinst du mit "umgehen"?
Wenn du die Variablen einzeln benannt und einen Wert zugewiesen haben willst, musst du schon das Format link.php?var1=wert1&var2=wert2 benutzen.
Sicher, umgehen liesse sich das (z. B. mit Implode & Explode), aber ich wüsste nicht, welchen Zweck das erfüllen sollte?!
Das ist doch normalerweise völlig unnötig!
 
Zurück