/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Sortere array/mysql liste specielt
Fra : Jonni


Dato : 08-10-05 20:48

Hejsa!
Jeg arbejder pt. med nogle adresse informationer i vores forening. Vi har en
praksis hvor vi forkorter adresser som gade, nr, etage og retning.
F.eks. strøget nr 13 1. tv. bliver: st131v.

Oplysningerne trækker jeg ud fra en mysql database, sorteret på adresse.
Det der driller mig er, at etagen skal kunne være et s for stuen, og
præsenteres med s før tallene 1, 2 og 3.
På samme vis, ville jeg gerne have retningen venstre, midt for, højre
sorteret i rækkefølgen v, m, h.

Gade og nr. giver ingen problemer, men bogstav s kommer efter tal i etagen,
og retningen "v, m, h" er i omvendt alfabetisk rækkefølge.

Eneste jeg kan komme på er at splitte adressen op, trække ud i arrays, og så
sortere på hver parameter, men virker lidt uoverskueligt og tungt på mig
Er der nogen der har en nem indgangsvinkel til dennne lidt snedige
sortering?

Jonni



 
 
Jacob Atzen (09-10-2005)
Kommentar
Fra : Jacob Atzen


Dato : 09-10-05 08:03

On 2005-10-08, Jonni <jobier@hotmail.com> wrote:
> Jeg arbejder pt. med nogle adresse informationer i vores forening. Vi
> har en praksis hvor vi forkorter adresser som gade, nr, etage og
> retning. F.eks. strøget nr 13 1. tv. bliver: st131v.
>
> Oplysningerne trækker jeg ud fra en mysql database, sorteret på
> adresse. Det der driller mig er, at etagen skal kunne være et s for
> stuen, og præsenteres med s før tallene 1, 2 og 3. På samme vis,
> ville jeg gerne have retningen venstre, midt for, højre sorteret i
> rækkefølgen v, m, h.
>
> Gade og nr. giver ingen problemer, men bogstav s kommer efter tal i
> etagen, og retningen "v, m, h" er i omvendt alfabetisk rækkefølge.
>
> Eneste jeg kan komme på er at splitte adressen op, trække ud i arrays,
> og så sortere på hver parameter, men virker lidt uoverskueligt og
> tungt på mig Er der nogen der har en nem indgangsvinkel til dennne
> lidt snedige sortering?

Hvis jeg var dig ville jeg ændre skemaet. Istedet for at bruge s for
stuen så brug 0. Istedet for v, m, h for retning, så brug 0, 1, 2. Så
kan du altid omforme det længere oppe i programmet, hvis du lyster.
Derudover ville jeg dele jeres adresse format op. Det er ikke særlig
pænt at samle flere informationer i et felt.

Hvis dette ikke er muligt bliver du nok nødt til at skrive din egen
sorteringsfunktion. Du kan splitte adresse udtrykket op i felter og
lægge det ind i et multidimensionalt array og derefter sortere arrayet.
Kig på manualsiden for array, der er en del sorteringsfunktioner og
formentlig også en du kan bruge:

http://php.net/array

--
Med venlig hilsen
- Jacob Atzen

Jonni (11-10-2005)
Kommentar
Fra : Jonni


Dato : 11-10-05 19:39

Jacob Atzen wrote:
> On 2005-10-08, Jonni <jobier@hotmail.com> wrote:
>> Jeg arbejder pt. med nogle adresse informationer i vores forening. Vi
>> har en praksis hvor vi forkorter adresser som gade, nr, etage og
>> retning. F.eks. strøget nr 13 1. tv. bliver: st131v.
>>
>> Oplysningerne trækker jeg ud fra en mysql database, sorteret på
>> adresse. Det der driller mig er, at etagen skal kunne være et s for
>> stuen, og præsenteres med s før tallene 1, 2 og 3. På samme vis,
>> ville jeg gerne have retningen venstre, midt for, højre sorteret i
>> rækkefølgen v, m, h.
>
> Hvis jeg var dig ville jeg ændre skemaet. Istedet for at bruge s for
> stuen så brug 0. Istedet for v, m, h for retning, så brug 0, 1, 2. Så
> kan du altid omforme det længere oppe i programmet, hvis du lyster.
> Derudover ville jeg dele jeres adresse format op. Det er ikke særlig
> pænt at samle flere informationer i et felt.
>


Tak, frygtede det lidt.
Har været inde på tanken tidligere, da det som du siger, falder mest
naturligt.
Var bare meget der skulle splittes op. Men gik nu temmelig hurtig, med et
par velvalgte "UPDATE WHERE" queries.

Jonni


begin 666 smile.gif
M1TE&.#EA#P`/`)$!`````+^_O___`````"'Y! $```$`+ `````/``\```(N
MC V9QY$"X6(@6GGJO0!)+3RA$XDA:&Y6JGXMIX$K%G,8^2EE]G:4?&ID%+Y#
#`0`[
`
end


Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408927
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste