Avatar billede cbj-dk Nybegynder
07. december 2003 - 02:06 Der er 13 kommentarer og
1 løsning

Sorter i sider

Ja, jeg stener, sidder og koder lidt, og er så træt at jeg ikke lige kan huske hvordan man laver selve sorteringen af antal indlæg i en.. Altså, hvordan jeg sætter den til at skrive:
<< - 1 2 3 4 - >>

Håber det var formuleret godt nok ;)
Avatar billede detox Nybegynder
07. december 2003 - 02:11 #1
Tja, du må da gerne uddybe det lidt mere.
Avatar billede korup Nybegynder
07. december 2003 - 02:15 #2
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 osv :)

/korup
Avatar billede korup Nybegynder
07. december 2003 - 02:16 #3
sidder selv og venter på en taxa :)

/korup
Avatar billede cbj-dk Nybegynder
07. december 2003 - 02:20 #4
Altså, jeg hiver et vist antal brugere ud af en database:
$result_users = mysql_query("SELECT * FROM users ORDER BY $_GET[order] $_GET[by] LIMIT $fra,$til");
Og der har jeg jo kun et lille udsnit, af de over 1000 brugere - den tager 20 ad gangen..
Men så vil jeg liste alle de sider der er, med 20 brugere på hver, altså lave en linie, hvor man kan køre frem og tilbage mellen siderne, og vælge en side..

Ligesom phpBB nederst til højre:
http://www.danish-dream.com/forum/viewforum.php?f=14&sid=dc319502dfa57160499e8e375a5b83c7
Avatar billede cbj-dk Nybegynder
07. december 2003 - 02:20 #5
og øverst til højre for den sags skyld ;)
Avatar billede Slettet bruger
07. december 2003 - 04:45 #6
Til selve din query skal du ikke bruge LIMIT fra, til men LIMIT fra, antal
Avatar billede martinbk Nybegynder
07. december 2003 - 05:03 #7
if (!isset($_GET[current_page])) {
    $current_page = 0;
}
else {
    $current page = $_GET[current_page];
}
if (!isset($_GET[messages_per_page])) {
    $messages_per_page = 3;
}
else {
    $messages_per_page = $_GET[messages_per_page];
}
$total_posts = mysql_result(mysql_query("SELECT COUNT(*) FROM tabel"),0) or die(mysql_error());
$total_pages = (int) ($total_posts / $messages_per_page]);

$navigation_text = "";
if ($current_page > 0) {
    $navigation_text .= "<a href=\"$_SERVER[PHP_SELF]?current_page=".($current_page-1)."&messages_per_page=$messages_per_page\" title=\"Previous page\">&#171;</a>&nbsp;&nbsp;";
}
else {
    $navigation_text .= "&#171;&nbsp;&nbsp;";
}

for ($i=0;$i<=$total_pages;$i++) {
    if ($current_page] != $i) {
        $navigation_text .= "<a href=\"$_SERVER[PHP_SELF]?current_page=".($i)."&messages_per_page=$messages_per_page\" title=\"Page ". ($i+1) ."\">". ($i+1) ."</a>&nbsp;&nbsp;";
    }
    else {
        $navigation_text] .= "<b>". ($i+1) ."</b>&nbsp;&nbsp;";
    }
}

if ($current_page < $total_pages) {
    $navigation_text .= "<a href=\"$_SERVER[PHP_SELF]?current_page=".($current_page+1)."&messages_per_page=$messages_per_page\" title=\"Next page\">&#187;</a>";
}
else {
    $navigation_text] .= "&#187;";
}

$query = mysql_query("SELECT * FROM tabel ORDER BY id DESC LIMIT  ".($current_page * $messages_per_page).", $messages_per_page");

har forsøgt at bruge åbenlyse variabelnavne, variablen $navigation_text indeholder hvad du skal burge, den udskriver du så blot hvor du vil have den

<?=$navigation_text;?>
Avatar billede martinbk Nybegynder
07. december 2003 - 05:05 #8
hovsa fandt en lille fejl i farten

i min forløkke står der i else betingelsen $navigation_text] det skal være uden ]

:-)
Avatar billede martinbk Nybegynder
07. december 2003 - 05:05 #9
og om ikke jeg har lavet samme bummert igen længere nede, men det opdager du vel :)
Avatar billede cbj-dk Nybegynder
07. december 2003 - 11:03 #10
Sandbox, til er antal, bare mig der bruger nogle underlige navne :P
Holybull: Takker, lige det eksempel jeg skulle bruge ;)
Avatar billede Slettet bruger
07. december 2003 - 12:33 #11
Så vil jeg meget kraftigt anbefale at skifte navn på din variabel. Der er ikke meget, der er sværere end at skulle finde fejl i kode med intetsigende eller direkte misvisende navne på funktioner og variable.
Avatar billede cbj-dk Nybegynder
07. december 2003 - 13:48 #12
Sandbox, tak tak, men da det er sådan en simpel og kort kode, så er jeg egentlig ligeglad.. SÅ misvisende er den jo hellerikke - Og jeg har nemmere ved at finde rundt i min kode, når jeg bare kalder variablerne det første der falder mig ind..
Og tro mig, jeg har styr på syntax og navne, efter 2 år med php, ved jeg skam godt hvordan jeg selv bedst hitter ud af denne.. ;)
Avatar billede Slettet bruger
07. december 2003 - 13:57 #13
Det er også nemt nok med kode, man arbejder med. Men prøv at forstille dig at skulle rette i en kode, du lavede for to år side, og du så først skal se efter hvor og hvordan en variabel bliver brugt før du kan se, hvad du skal sætte den til.

Det er bare et godt råd.
Avatar billede cbj-dk Nybegynder
07. december 2003 - 14:09 #14
ok, tak, de skal jeg huske ;)
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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