Gå til innhold

bare vise tall en gang i for-løkke


Anbefalte innlegg

driver å prøver meg på pagination..

har en for-løkke som ser slik ut:

for($i = 1; $i <= $antall[0]; $i++){
$side = ceil($i / 5);
echo "<a href=\"index.php?side=$side\">$side</a> - ";
}

$antall[0] er hentet ut fra en mysqltabell med count(id).. for øyeblikket 13

men slik som det er nå blir ramset opp 13 siffer, på grunn av antallet.

slik: 1 - 1 - 1 - 1 - 1 - 2 - 2 - 2 - 2 - 2 - 3 - 3 - 3 -

hvordan kan jeg få et tall til bare å komme 1 gang og at sånn at ikke 0 kommer?

Endret av kennteh
Lenke til kommentar
Videoannonse
Annonse

det har jeg. skal ha 5 "treff" for hver side.

akkurat nå er det 13 innlegg og da skal det bli 3 sider, men som du ser der oppe så kommer mange tall flere ganger, og også tallet 0.

det er hvordan jeg kan få det vekk jeg lurer på.

Lenke til kommentar

$i starter å telle på 0, da du deler 0 på 5 vil du få null. Så blir $i til 1, som du også deler på 5 og runder av til 0, og slik fortsetter det... Vis du skal ha id til hver av sidene må $ starte på 1, og du kan da ikke dele $i på 5?

Endret av Mr. Bakke
Lenke til kommentar

jeg prøver å få det til å stå:

1 - 2 - 3 (osv etter hvor mange innlegg det er i tabellen, som igjen deles på 5 fordi skal være 5 innlegg pr. side)

 

 

dette er hva som skal skje senere og jeg skal gjøre da:

hvor hvert tall er en link med en variabel,

så hentes variabelen og jeg har mekket noen greier for å få til riktig limit i mysqlspørringen.

som sagt er det et pagination script jeg lager.

Endret av kennteh
Lenke til kommentar

PHP

<?php

$sider = ceil($antall[0] / 5);

for($i 1$i <= $sider$i++){

echo "<a href='index.php?side=$side'>$i</a> - ";

}

?>

 

Trur denne vil fungerer.

 

Edit: Fiksa ein feil i koden :blush:

Endret av Shadows0
Lenke til kommentar
PHP

<?php

$sider =  ceil($i / $antall[0]);

for($i = 1; $i <= $sider; $i++){

echo "<a href="index.php?side=$side">$i</a> - ";

}

?>

 

Trur denne vil fungerer.

8672192[/snapback]

 

herlig shadows0 :) den funket, måtte bare gjøre om til

$$sider =  ceil($antall[0] / $antall[0]+($antall[0]/5)-1);
for($i = 1; $i <= $sider; $i++){
echo "<a href=\"index.php?side=$side\">$i</a> - ";
}

 

takk

og takk til mr. bakke som hvertfall prøvde ;)

Endret av kennteh
Lenke til kommentar

Tror ikke det funker helt korrekt slik du har gjort. Du har regnet ut $sider på feil måte.

 

Såvidt jeg kan se vil $sider alltid være 1? Eller har jeg regnet feil.

 

$sider bør være ceil($antall[0]/5) om du skal ha 5 artikkler på hver side.

Lenke til kommentar
Tror og du kan få problemer med å bruke gåseøyne inne i gåseøyne, slik du har gjort.

8672479[/snapback]

 

Han har muligens brukt escape char forand, "\" eller \"", men jeg har oppleved flere ganger at escape char'en forsvinner i PHP tagene så resultatet blir "", spesielt hvis de blir plassert i mellom <?php ?> (for å få farge koding). Ellers så har du rett i at "" fungerer dårlig.

 

Edit: Ved nærmere ettersyn så er jo koden kun plassert i en code tag, ser at det er benyttet litt forskjellig metoder over, noen er lovlig og andre ikke.

Endret av crowly
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...