Avatar billede egeriis Nybegynder
10. maj 2006 - 11:44 Der er 4 kommentarer og
1 løsning

Modtage antal - men sætte limit

For at gøre det mest optimalt, vil jeg have et limit på mit query og opdele resultatet over flere sider. Men dette forhindrer mig jo i at hente det totale antal resultater i samme query - eller hvad?

Skal jeg virkelig køre to queries for at hente det totale antal?
Avatar billede tfswebguy Nybegynder
10. maj 2006 - 12:02 #1
<?
// Vælg hvor mange der skal vises per side
$antal = 30;

// Henter side fra variabel
if(isset($_GET['page'])){
$startnum = $_GET['page'];
}else{
$startnum = 0;
}

// Query
mysql_query("SELECT * FROM tabel WHERE(felt='". $_POST['variabel'] ."') LIMIT $startnum,$antal");

// Link til frem/tilbage

if(isset($_GET['page'])){
?>
<a href='?page=<?=$_GET['page']-$antal;?>'>Tilbage</a> -
<?
}
?>
<a href='?page=<?=$_GET['page']+$antal;?>'>Frem</a>


Det skulle virke
Avatar billede egeriis Nybegynder
10. maj 2006 - 15:47 #2
Du har misforstået spørgsmålet.
Avatar billede kroning Nybegynder
10. maj 2006 - 17:42 #3
Du skal bruge SQL_CALC_FOUND_ROWS og FOUND_ROWS

Se:
http://dev.mysql.com/doc/refman/5.0/en/information-functions.html#id3155227
Avatar billede egeriis Nybegynder
11. maj 2006 - 14:47 #4
Super godt, det har jeg sgu ledt efter en løsning på i lang tid. Tak for hjælpen :)

(Ligger du lige et svar?)
Avatar billede kroning Nybegynder
11. maj 2006 - 15:06 #5
ok
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