04. maj 2011 - 20:53
Der er
8 kommentarer og 1 løsning
Fremhævning af søgestreng med wildcards
Hej, Jeg sender to søgeord til en resultatside og ønsker disse fremhævet i teksten på siden. Url enside.com/side.php?ord1=Mads&ord2=%25en%25 Tekst: Mads er en dreng som går i skole. Som bliver: <b>Mads</b> er <b>en</b> dr<b>en</b>g som går i skole. Jeg kan ikke gennemskue hvordan det løses med wildcards (% og _) - kan i komme med et forslag?
Annonceindlæg fra Conscia
Jeg ville nok vælge en løsning som nedenstående. Løb dine søgeresultater igennem ord for ord i en form for løkke og indsæt følgende: $currentWord = 'Mads'; if($currentWord == $_GET['ord1']) { str_replace($currentWord, '<b>'.$currentWord.'</b>'); } Det er naturligvis bare lige et hurtigt tankeeksperiment.
Undskyld.. Nu fik jeg lige tænkt over hvad jeg prøvede at bilde dig ind ;) koden ser naturligvis således ud: $ord1 = "Mads"; $ord2 = 'en'; $str = "Mads er en dreng der går i skole hver dag"; $str = str_replace($ord1, '<b>'.$ord1.'</b>', $str); $str = str_replace($ord2, '<b>'.$ord2.'</b>',$str); echo $str
Hej Danco, Det var noget i den retning jeg tænkte, men jeg kan ikke kombinere det med wildcards.
Kan du definere lidt nærmere hvad du mener med wildcards
Hvis _ indsættes i en søgestreng erstatter det ét tegn, mens % erstatter ét eller flere. Fx vil søgning på skole% vise resultater som skoletaske, skolebænk, skoletavle osv., men søgning på f_r giver far, får, for osv.
Jamen så bliver du nødt til at løbe alle ord igennem og teste på om de overholder kriteret.
02. august 2011 - 17:16
#7
lukker
17. august 2011 - 07:19
#8
Lukker
01. september 2011 - 08:21
#9
Lukker
Vi tilbyder markedets bedste kurser inden for webudvikling