Avatar billede locura Novice
28. februar 2005 - 17:38 Der er 5 kommentarer og
1 løsning

Fejl i sideskift

HEJ

Jeg har forsøgt at lave en kode hvor jeg henter data ud fra en mySQL database hvilket fungere fint. Problemet kommer når jeg skal lave sideskift, koden ser indtil videre således ud:



<b>Titler:</b><br><br>
<?
include ('connect.php');

$antal = 20;

if (!isset($limit)) {
$limit = 0;
}

$resultat = mysql_query("select id, titel from dvdliste order by titel LIMIT $limit,$antal");

if (mysql_num_rows($resultat) == 0) {
    echo 'Der er ingen titler tilføjet!<br>';
} else {

while ($raekke = mysql_fetch_assoc($resultat)) {
  echo "<a href=info.php?id=$raekke[id]>$raekke[titel]</a>&nbsp;&nbsp;<a href=rettelse.php?id=$raekke[id]>(Ret)</a>&nbsp;&nbsp;<a href=slet.php?id=$raekke[id]>(Slet)</a><br>";
}
}

$next = $limit + $antal;
$back = $limit - $antal;
$antal = mysql_num_rows($resultat);

if ($antal > $limit+$antal) {
echo "<a href=index.php?limit=$next>Næste</a>";
}

if ($limit >= $antal) {
echo "<a href=index.php?limit=$back>Tilbage</a>";
}

?>
<br><hr><br>
<a href="send.php">Tilføj en titel</a>



Når jeg går ind på siden viser den rigtigt nok kun 20 titler, men linket til sideskiftet vises ikke!
Nogle der lige kan se hvad fejlen evt. kunne være, har efterhånden stirret mig blind på det :(
Avatar billede locura Novice
28. februar 2005 - 17:49 #1
Har fundet en enkelt fejl, da jeg har to forskellige definationer på $antal, denne fejl er rettet, men det virker stadigvæk ikke!
Avatar billede locura Novice
28. februar 2005 - 18:24 #2
har fundet ud af det!
Avatar billede moocher Nybegynder
28. februar 2005 - 18:27 #3
prøv at tilføje

echo $next;
echo $back;
echo $antal;

efter du har tildelt dem værdier...
Avatar billede moocher Nybegynder
28. februar 2005 - 18:27 #4
nå ok hvad var fejlen
Avatar billede locura Novice
28. februar 2005 - 18:49 #5
Brugte denne query:
$resultat = mysql_query("select id, titel from dvdliste order by titel LIMIT
$limit,$antal");

til at tælle antallet af rows i hele tabellen, her skulle jeg istedet bruge: $resultat = mysql_query("select titel from dvdliste");

Man kan hurtigt stirre sig blind på de skide koder :)
Avatar billede locura Novice
28. februar 2005 - 18:50 #6
den korretke koder ser således ud:

<b>Titler:</b><br><br>
<?
include ('connect.php');

$antal = 20;

$limit = $_GET['limit'];
if (!isset($limit)) {
$limit = 0;
}

$resultat = mysql_query("select id, titel from dvdliste order by titel LIMIT $limit,$antal") or die(mysql_error());

if (mysql_num_rows($resultat) == 0) {
    echo 'Der er ingen titler tilføjet!<br>';
} else {

while ($raekke = mysql_fetch_assoc($resultat)) {
  echo "<a href=info.php?id=$raekke[id]>$raekke[titel]</a>&nbsp;&nbsp;<a href=rettelse.php?id=$raekke[id]>(Ret)</a>&nbsp;&nbsp;<a href=slet.php?id=$raekke[id]>(Slet)</a><br>";
}
}
?>
<br>
<?
$resultat2 = mysql_query("select titel from dvdliste");
$antal2 = mysql_num_rows($resultat2);

if ($limit >= $antal) {
$back = $limit - $antal;
echo "<a href=index.php?limit=$back>Tilbage</a>&nbsp;";
}

if ($antal2 > $limit+$antal) {
$next = $limit + $antal;
echo "<a href=index.php?limit=$next>Næste</a>";
}
?>
<br>
Antal titler: <? echo "$antal2"; ?>
<br><hr><br>
<a href="send.php">Tilføj en titel</a>
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester