Avatar billede jowii Nybegynder
03. januar 2009 - 17:50 Der er 2 kommentarer og
1 løsning

Søgemaskine fra bunden

Hej,
Jeg har fået lyst til at kode min egen søgefunktion, da en hosted søgefunktion synes at være lidt for let sluppet udenom.

Jeg har set denne tråd:
http://www.eksperten.dk/spm/653490

Hvis ovenstående link er svaret, kunne jeg godt tænke mig en uddybning af denne kode. ELlers vil jeg være ganske tilfreds med et link til en guide, som beskriver den ønskede fremgangsmåde.

Søgefunktionen skal være helt simpel. Jeg har 10 sider - hver side med forskellige søgeord. Der skal placeres et søgefelt på hver side, og her skal brugeren kunne søge på alle 10 sider.
Søgefunktionen må gerne kodes i php

Jeg håber det var nok information. På forhånd tak.

Mvh. Jowii
Avatar billede mindtwister Nybegynder
17. januar 2009 - 23:46 #1
Der er flere muligheder hvis du køre siderne over mysql vil det kunne lade sig gøre at bruge "select * from tabel where indhold like '%søgeord%' || overskrift like '%søgeord%'"
koden henter i første tilfælde alle rækker fra tabellen med navn 'tabel' hvor kolonnerne indhold og overskrift indeholder søgeordet (bemærk kun et ord eller en sammenhængende tekststreng)
anbefalet parametiserede queries eg.
$stmt = $db->prepare("select overskrift, tekst, oprettelsesdato from tabel where indhold like ? or overskrift like ?")
$stmt->bind_param("ss",$search,$search);
Så du undgår injections, denne kode henter overskrift, tekst og oprettelsesdato efter samme kriterier som ovenstående
Hvis det ikke kører over søgeord kan du lave et array med søgeord der passer til hver enkelt side f.eks
$dyr = array("heste","katte",hunde")
$frugter = array("æble","pære","banan")
$searchwords = array("dyr.php" => $dyr,"frugter.php" => $frugter);
foreach($searchwords as $side => $ord){
  foreach($ord as $muligthit){
    if("søgeord" == $muligthit)
      echo "<a href='$side'>$side</a>";
}
}
Denne kode checker hvert kodeord for de sider du har tilføjet, hvis det enkelte kodeord bliver fundet bliver der udskrevet et link til siden, hvor teksten med linket til siden er sidens adresse.
Der skal i det overstående tages højde for stavefejl og alt muligt andet der kan gå galt når man skriver kode uden at checke det ;)

Hvis du kan være mere specifik så skal jeg med glæde hjælpe hvis det ikke kommer til at tage så meget tid at jeg skal have penge for det ;)

Mvh.
Kristoffer Sall Hansen
http://www.refunk.dk
Avatar billede jowii Nybegynder
13. oktober 2010 - 08:52 #2
OK. Jeg skal ikke længere bruge søgefunktion, så ved ikke om ovenstående virkede.

Men smid gerne et svar - så giver jeg dig points som tak for hjælpen :o)
Avatar billede jowii Nybegynder
19. juli 2011 - 16:06 #3
Lukker her :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester