PDA

Bekijk Volledige Versie : Schakelen tussen DESC en ASC



Anno
02/01/04, 14:00
Met 1 Url wil ik elke keer wanneer ik er op klik schakelen tussen Ascent en
Descent om oplopend en aflopend te sorteren.

Dus ik ben op zoek naar een manier om met php zo iets op te zetten.
Ik heb dit geprobeert met een extra waarde in de url zoals &getal=2
Vervolgens met if $getal = 2 dan wordt $sort DESCENT anders $sort wordt
ASCENT.
Maar dan moet de volgende keer dat ik op de url klik $getal weer 1 worden en
de volgende klik weer 2.

Ik heb van alles geprobeert maar het lukt mij nog steeds niet.
Misschien is er een manier om met php te kijken of het getal even of oneven
is dan kan ik gebruik maken van $getal = $getal++

Heeft iemand een oplossing ??

Rene Pijlman
02/01/04, 14:30
Anno:
>Maar dan moet de volgende keer dat ik op de url klik $getal weer 1 worden en
>de volgende klik weer 2.
>
>Ik heb van alles geprobeert maar het lukt mij nog steeds niet.

De magische formule die dit voor elkaar krijgt is:

getal[0] = 1
getal[n+1] = 3 - getal[n]

--
René Pijlman

Wat wil jij leren? http://www.leren.nl

Inca
02/01/04, 15:00
Anno wrote:
> Misschien is er een manier om met php te kijken of het getal even of
> oneven is dan kan ik gebruik maken van $getal = $getal++

$getal % 2
geeft 0 als getal even is en 1 als getal oneven is.

Rekenkundig kun je ook -1 en 1 gebruiken. Je vermenigvuldigt dan elke keer
met -1

Je kunt het ook met booleans doen, dan wordt het iets als:

$desc = isset( $_GET['desc''] );
if( $desc)
$sql .= ' DESC';
// voer query uit
if( !$desc )
$url .= "&desc=1";
// doe iets met de nieuwe url

Voordelen: een bool is iets inzichtelijker dan een getal en als de variabele
'desc' niet gegeven is dan is er nog niets aan de hand, het zal gewoon
werken.
--
Inca
JA - Wel een vijfde baan erbij
NEE - Liever niet gebruiken
http://www.poldermodelstickers.nl/

Ewald Börger
02/01/04, 16:30
In article <bt3pne$mm1$1@reader11.wxs.nl>, anno-zero@wxs.nl says...
> Met 1 Url wil ik elke keer wanneer ik er op klik schakelen tussen Ascent en
> Descent om oplopend en aflopend te sorteren.
>
> Dus ik ben op zoek naar een manier om met php zo iets op te zetten.
> Ik heb dit geprobeert met een extra waarde in de url zoals &getal=2
> Vervolgens met if $getal = 2 dan wordt $sort DESCENT anders $sort wordt
> ASCENT.
> Maar dan moet de volgende keer dat ik op de url klik $getal weer 1 worden en
> de volgende klik weer 2.
>
> Ik heb van alles geprobeert maar het lukt mij nog steeds niet.
> Misschien is er een manier om met php te kijken of het getal even of oneven
> is dan kan ik gebruik maken van $getal = $getal++
>
> Heeft iemand een oplossing ??

url?toggle=1

en dan zoiets als
$toggle = $_GET["toggle"];
$sort = $toggle?"ASC":"DESC";
en dan vervolgens weer ergens een
<a href="url?toggle=<? echo !$toggle; ?>">Toggle list</a>
neer te zetten?

Of net zo makkelijk natuurlijk:

url?sort=ASC

$sort = $_GET["sort"];

..... iets doen met dat sorteren natuurlijk

$sort = ($sort=="ASC"?"DESC":"ASC");
<a href="url?sort=<?=$sort;?>">Resort list</a>

mmmz, ik heb wel veel cryptische dingen gebruikt zie ik :)

$sort = ($sort=="ASC"?"DESC":"ASC");
is het zelfde als:
if ($sort == "ASC") {
$sort = "DESC";
} else {
$sort = "ASC";
}

en <?=$sort;?> is het zelfde als <? echo $sort; ?>

--
Ewald Börger
-remove .com in my email address-

Anno
02/01/04, 20:30
Hallo Inca

Met de formule $getal % 2 is mijn probleem opgelost

groeten Anno

"Inca" <shadow*movements@wanadoo.NOSPAM.invalid> schreef in bericht
news:bt3srj$p3a$1@nl-news.euro.net...
> Anno wrote:
> > Misschien is er een manier om met php te kijken of het getal even of
> > oneven is dan kan ik gebruik maken van $getal = $getal++
>
> $getal % 2
> geeft 0 als getal even is en 1 als getal oneven is.
>
> Rekenkundig kun je ook -1 en 1 gebruiken. Je vermenigvuldigt dan elke keer
> met -1
>
> Je kunt het ook met booleans doen, dan wordt het iets als:
>
> $desc = isset( $_GET['desc''] );
> if( $desc)
> $sql .= ' DESC';
> // voer query uit
> if( !$desc )
> $url .= "&desc=1";
> // doe iets met de nieuwe url
>
> Voordelen: een bool is iets inzichtelijker dan een getal en als de
variabele
> 'desc' niet gegeven is dan is er nog niets aan de hand, het zal gewoon
> werken.
> --
> Inca
> JA - Wel een vijfde baan erbij
> NEE - Liever niet gebruiken
> http://www.poldermodelstickers.nl/
>
>

Rene Pijlman
02/01/04, 21:00
Anno:
>Met de formule $getal % 2 is mijn probleem opgelost

Had de wereld maar meer van dat soort problemen :-)

--
René Pijlman

Wat wil jij leren? http://www.leren.nl