03. december 2012 - 22:08
Der er
14 kommentarer og 1 løsning
sorter efter flest match
Jeg har følgendene db id|navn|mulige|time ___________________ 1|Jens|1 23 6 9 3|xxxxxxxxxx 2|Poul|10 4 8 2 7|xxxxxxxxxx 3|Bent|1 4 83 9 3|xxxxxxxxxx 4|Thor|11 8 6 7 3|xxxxxxxxxx Jeg laver en søgning $search = '8 10 11 9 2 7 6 4'; Der skal søges blandt flest match i 'mulige' Derfor skal den vise navnene i følgendene rækkefølge 2|Poul|10 4 8 2 7|xxxxxxxxxx 8 10 2 7 4 = "5 match" 1|Jens|1 23 6 9 3|xxxxxxxxxx 8 9 6 = "3 match" 4|Thor|11 8 6 7 3|xxxxxxxxxx 8 7 6 = "3 match" 3|Bent|1 5 83 9 3|xxxxxxxxxx 11 9 4 = "2 match" Fordi den skal sortere efter flest match
Annonceindlæg fra HPE
04. december 2012 - 02:02
#1
Forkert database struktur. Du skal have en ekstra tabel med en raekke for hver vaerdi ikke en enkelt vaerdi med tal adskilt af mellemrum.
04. december 2012 - 18:50
#2
Nåh, kunne ikke se arne_v's kommentar før efter login ? Men helt enig !
04. december 2012 - 19:09
#3
Tallene kan variere fra person til person jeg ikke lave en tabel for hvert tal da der kan være over 100 forskellige tal per person, Og over 5000 Tal muligheder så den bliver udlæst med explode(' ', $mulige);
04. december 2012 - 19:32
#4
Der skal ikke laves en tabel for hvert tal. Kun en tabel mere med en raekke per person-tal kombination.
04. december 2012 - 19:41
#5
Ikke forstået kan du ikke lige sætte eksempel op.
04. december 2012 - 19:47
#6
de to foerste fra dit eget eksempel id tal 1 1 1 23 1 6 1 9 1 3 2 10 2 4 2 8 2 2 2 7
04. december 2012 - 20:54
#7
Antallet er ikke fast det kan også se ud på følgendene måde 2|Poul|10 4 8 2 7 84 259 1 17 55|xxxxxxxxxx 1|Jens|1 23 6 9 3|xxxxxxxxxx 4|Thor|11 8 6 7 3 192 9 24 29 47 38 88 94|xxxxxxxxxx 3|Bent|1 5 83 9 3|xxxxxxxxxx Som sagt antallet at der kan være over 100 forskellige tal per person. derfor valgte jeg at gøre det så ledes.
04. december 2012 - 20:57
#8
og? der er ikke noget som forhindrer dig i at have et forskelligt antal raekker per person i den anden tabel!
04. december 2012 - 21:02
#9
Kan det så ikke lade sig gøre med min explode?
04. december 2012 - 21:06
#10
Måske noget der starter således: $numbers = explode(' ', $mulige); foreach ($numbers as $num) {
04. december 2012 - 21:35
#11
Eller har fundet $numbers = '1 23 6 9 3'; $search = '8 10 11 9 2 7 6 4'; $num = explode(' ', $numbers); $sear = explode(' ', $search); $result = array_intersect($num, $sear); print_r($result);
04. december 2012 - 21:39
#12
Ja der var det jeg søgte. Men tak for hjælpen og vil bruge dit til næstegang det vil gøre det meget nemmere for mig, så derfor send svar for point.
04. december 2012 - 22:25
#13
Jeg har smidt det ind i en while Kan du fortælle mig hvordan jeg undgår: Warning: mysql_fetch_array() expects parameter 1 to be resource array given in
04. december 2012 - 23:04
#14
Sorry for hurtig Lavede den i en funktion.
06. december 2012 - 02:37
#15
svar
Vi tilbyder markedets bedste kurser inden for webudvikling