[ASP/MySQL] Sorteren

Pagina: 1
Acties:

  • ArjanC
  • Registratie: Juli 2001
  • Laatst online: 26-01 17:16
Hoi,

ik ben bezig met een webshop maken, nu is de vraag of ze zelf de producten kunnen sorteren.
dat sommige producten dus helemaal bovenaan komen te staan en dan een andere als tweede enz.

ik dacht dat eerst met cijfers te doen maar als ik die opvraag uit MySQL dan sorteerd hij zo:

1
10
11
12
2
3
4
5

enz..

omdat het om meer dan 10 producten gaat maar (waarschijnlijk) minder dan 26 producten wil ik het met letters gaan doen..

A
B
C
D

Maar is dit wel handig? want stel dat ze het dus wel met meer dan 26 producten willen gaan doen.

hebben jullie een beter id?

  • faabman
  • Registratie: Januari 2001
  • Laatst online: 08-08-2024
001
002
003
004
etc.

Op zoek naar een baan als Coldfusion webdeveloper? Mail me!


  • Gert
  • Registratie: Juni 1999
  • Laatst online: 05-12-2025
Is het niet handig een nummer in een nummeriek veld op te slaan? Sorteert dan ook netjes zoals het hoort.

  • ArjanC
  • Registratie: Juli 2001
  • Laatst online: 26-01 17:16
okay,

ander vraagje, stel dat je vier producten heb.

001 prod1
002 prod2
003 prod3
004 prod4

en je wil prod4 op plek 001 zetten dan zou het zoiets als dit worden :

als 001 bestaat, maak van 001 -> 002
als 002 bestaat, maak van 002 -> 003
als 003 bestaat, maak van 003 -> 004
enz.

is hier geen makkerlijke mogelijkheid voor?

je zou ook producten kunnen swappen, maar met 26 producten ben je dan even bezig met goedzetten.

  • _Thanatos_
  • Registratie: Januari 2001
  • Laatst online: 06-03 20:19

_Thanatos_

Ja, en kaal

ff een praktische vraag, waarom wil je eigenlijk sorteren? Bij de meeste webshops ervaart de bezoeker een "custom" sortering als "door elkaar". En de bezoeker verwacht dan ook meestal dat een productenlijst op naam of prijs gesorteerd wordt...

日本!🎌


  • ArjanC
  • Registratie: Juli 2001
  • Laatst online: 26-01 17:16
Als het om een lijst met producten direct onder elkaar gaat ben ik het met je eens, die sorteer ik ook gewoon op naam.

maar dit gaat om een lijst met producten, van het belangrijkste naar het minder belangrijkst.
ook staan ze niet direct onder elkaar maar staat er een product, uitleg daarover en dan een volgend.
op die manier oogt het niet "door elkaar"

  • sopsop
  • Registratie: Januari 2002
  • Laatst online: 07-05 15:06

sopsop

[v] [;,,;] [v]

Er zit dus geen echte logica in de sortering. Dat houdt in dat je die sortering handmatig moet zetten. Dat zal dus altijd op basis van dat nummer gaan.

Ik heb wel eens zo'n sorterings pagina gemaakt voor foto's, dat heb ik als volgt gedaan.
Een lijst met alle foto's onder elkaar. Bij iedere foto staan een aantal linkjes: 1 plaats omhoog, 5 plaatsen omhoog, 10 plaatsen omhoog, helemaal omhoog. Het zelfde voor het omlaag brengen van die foto.

In de sorteringslinkjes van de foto staan wat informatie over de sorteringsnummer, bijvoorbeeld: je wilt een foto 10 plaatsen naar boven zetten, dan staat in het sorteringslinkje het id van de foto die je wilt verplaatsen en het id van de foto die er 10 plaatsen bovenstaat.

Het updaten van je tabel gaat dan als volgt:
Eerst hoog je alle sorterings id's van foto's die groter of gelijk zijn aan het id van de foto die 10 plaatsen erboven staat en kleiner zijn dan het id van de foto die je gaat verplaatsen. Daarna wijzig je de sorteringsid van de foto die je gaat verplaatsen in het id van de foto van 10 plaatsen erboven (die inmiddels met 1 verhoogd is).

[ Voor 3% gewijzigd door sopsop op 24-03-2005 10:37 ]

Pagina: 1