Kom ihåg mig?
Home Menu

Menu


Avancerad sidnumrering i PHP

 
Ämnesverktyg Visningsalternativ
Oläst 2012-07-08, 03:17 #1
jonssondesign jonssondesign är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Oct 2010
Inlägg: 709
jonssondesign jonssondesign är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Oct 2010
Inlägg: 709
Standard Avancerad sidnumrering i PHP

Godmorgon mina kära wn-vänner!

Jag har 2 frågor som jag hoppas att ni kan svara på.

1) Säg att du är inne på en klädbutik på internet, och du sitter och kollar på badbyxor för killar. Sen känner du att du vill gå in på tjej avdelningen, och när du trycker på "kvinnor" i gender-menyn, vilket känns mest naturligt då?

1.1) Att man kommer till avdelningen för tjejer och direkt till kategoryn badkläder.

1.2) Att man kommer till avdelningen för tjejer, men inte in i någon underkategori.

Vad tror ni?

--------------------------------------
--------------------------------------

2) Nu till programmeringsproblemet.

Jag håller på och försöker programmera en sidnumrering, men får (uppenbarligen) inte till det som jag vill.

I dagsläget har jag det såhär:

1 2 3 4 5 ... 25
1 2 3 4 5 6 ... 25
1 2 3 4 5 6 7 ... 25
1 2 3 4 5 6 7 8 ... 25
osv ända tills:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25

Som du förstår kan man ju inte ha det så..
Jag försöker eftersträva en version som liknar detta:

1 2 3 4 5 ... 25
1 2 3 4 5 ... 25
1 2 3 4 5 ... 25
1 2 3 4 5 ... 25
5 6 7 8 9... 25
5 6 7 8 9... 25
5 6 7 8 9... 25
5 6 7 8 9 ... 25
osv ända tills:
21 22 23 24 25

Hur ska jag tänka då? Någon som kan ge mig tips, eller ännu bättre, göra om min kod så att den (enligt din tro) fungerar som jag vill ha det. (Förklara inte hur du har gjort till en början, utan låt mig istället få försöka tänka ut det hela själv, och sen får du rätta mig om jag har fel )

Såhär ser min kod ut i function.php:

Tips!:

$num_rows = 49 produkter (rader i databasen)
$page = vilken sida man är på (startar på 0)
$page_amount = hur många sidor det finns (produkter delat på antal per sida, avrundat uppåt)
$dottes = räknare var ... ska finnas


PHP-kod:
function paging(){
    global 
$num_rows;
    global 
$page;
    global 
$page_amount;
    
$dottes 0;
    if(
$page_amount != "0"){

        echo 
"<ul>";

        if(
$page != "0"){
            
$prev $page-1;
            echo 
"<li><a href=\"index.php?p=$prev\">F&ouml;reg&aring;ende</a></li>";
        }

        for ( 
$counter 0$counter <= $page_amount$counter += 1) {

            if (
$counter == $page) {
                echo 
"<li class=\"curr\"><a href=\"index.php?p=$counter\">";
                echo 
$counter+1;
                echo 
"</a></li>";
            } else {

                if (
$counter $page+5) {
                    echo 
"<li><a href=\"index.php?p=$counter\">";
                    echo 
$counter+1;
                    echo 
"</a></li>";
                } else if (
$counter $page_amount-1) {
                    echo 
"<li><a href=\"index.php?p=$counter\">";
                    echo 
$counter+1;
                    echo 
"</a></li>";
                } else {
                    
$dottes++;
                    if (
$dottes == 1) {echo "<li>...</li>";}
                };
            }
        }

        if(
$page $page_amount){
            
$next $page+1;
            echo 
"<li><a href=\"index.php?p=$next\">N&auml;sta</a></li>";
        }
        echo 
"</ul>";

    }

Klarar ni att besvara båda frågorna, och även lyckas hjälpa med mitt eländiga problem med sidnumreringen så tackar jag verkligen mycket! (jag har bara jobbat med php och mysql några veckor... That's why i can't solve it myself..

Vi höres nästa gång jag slår upp ögonlocken! Godnatt!
jonssondesign är inte uppkopplad   Svara med citatSvara med citat
 


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 19:48.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017