Gå til innhold

søkefelt med forslagsboks


Anbefalte innlegg

Prøver å få til et søkefelt med sånn forslagsboks som det er her på diskusjon i søkefeltet "Gå til:" - At når man begynner å skrive så kommer det opp alternativer. I mitt tilfelle - alle registrerte virksomheter.

 

Forslagene hentes fra MySQL. Så har satt opp dette i PHP:

<?php
include ('/path/to/MySQL/access-db.php');  //  connect to db
if(isset($_POST['SearchInput']))
{
 $search = strtolower(mysql_real_escape_string($_POST['search']));
 $res = mysql_query('SELECT * FROM table WHERE field LIKE "%'.$search.'%"') or die();
 while ($get = mysql_fetch_assoc($res))
 {
   $bus = utf8_encode($get['fieldValue']);
   $bus = str_replace($search, '<span class="highlight">'.$search.'</span>',$bus);
   $bus = str_replace(ucfirst($search), '<span class="highlight">'.ucfirst($search).'</span>',$bus);
   print '<a href="/virksomhet.php?&bedrift='.$get['fieldPrimary'].'" target="_blank">'.$bus.'</a>';
 }
 mysql_close();
}
?>

 

Videre kom jeg over en jQuery-sakt her:

<script type="text/javascript">
<!--
$(document).ready(function()
{
 $("#search").focus(function() {
   if($("#search").val() == "Business Search") { $("#search").val(""); }
   $("#search").css("color", "#000000");
 });

 $("#search").blur(function() {
   if($("#search").val() == "") { $("#search").val("Category Search"); $("#search").css("color", "#cecece"); }
   $("#results").slideUp(128);
 });

 $("#search").keydown(function(e) {
   if(e.which == 8) { var SearchText = $("#search").val().substring(0, $("#search").val().length-1); }
   else { var SearchText = $("#search").val() + String.fromCharCode(e.which); }
   $("#results").load("/test_area/files/getCategories.php", { search: SearchText });
   $("#results").slideDown(128);
 });
});
-->
</script>

 

Dette oppsettet fungerer på et sett og vis - men har litt mangler.

Det som er, er at

(1) så takler det ikke [æøå]

(2) jeg kan ikke benytte pil opp/ned på tastaturet for å velge et forlsag.

(3) linkene "faller" ut/gir ingen respons

 

(1) ÆØÅ

All data i databasen er UTF-8 samt at hoveddokumentet er UTF-8

æøå vises korrekt i forslagsboksen, men det er når jeg forsøker å skrive æøå i søkefeltet at jeg ikke får noen respons.

Scriptet ligger på en includert fil og ingen tegnsett er satt i disse dokumentene (men det skulle vel ikke gjøre noe da det bruker headeren til hoveddokumentet?)

 

 

(2) opp/ned

Har lest littegranne og sett at det er

...
if(e.which == 8)
...

som "styrer" tastaturet, men har ikke klart å fått til noe mer ut av det. Noen som kan hjelpe litt med den biten?

 

(3) linker

Når man klikker på et av forslagene, som er en link, lukker bare forslagsoversikten seg uten å åpne linken først...

 

 

 

Fikk ett tips om en søkemotor - SOLR - i en annen tråd om "Faceted Navigation".

Er dette noe SOLR kan? (har ikke satt meg inn i SOLR enda da det virket til å bli en del studering for å sette opp)

Endret av Yawa
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...