Avatar billede ostehamster Nybegynder
17. januar 2003 - 12:53 Der er 4 kommentarer og
1 løsning

Søge-"maskine"

Hejsa

Jeg skal bruge et script, som kan lave en søgetekst, om til noget SQL.

Altså hvir jeg f.eks. skriver "hest+mus", så skal det laves om til ((tabel LIKE '%hest%*) AND (tabel LIKE '%mus%'))

Hvordan er det lige man gør det på en smart måde?

Links til toturials osv. er godt nok, hvis det altså virker :)
Avatar billede Slettet bruger
17. januar 2003 - 13:07 #1
$string = "hest+mus";
$string = explode("+", $string);
foreach($string as $value)
{
  $sql[] = "(tabel LIKE '%$value%');
}
$sql = implode(" AND ", $sql);
echo $sql;
Avatar billede ostehamster Nybegynder
17. januar 2003 - 13:21 #2
tja, men der kan jo også være +,-,|,og,ikke,eller,and,not,or osv., så man kan ikke bare lave den der explore

Desuden skulle der også gerne være noget med parenteser og "" tegn
Avatar billede sostack Nybegynder
17. januar 2003 - 14:25 #3
Hvad med:
$string = "hest+mus";
if(stristr("+", $string) {
    $string = explode("+", $string);
    $tegn = "AND";
} else {
if(stristr("-", $string) {
    $string = explode("-", $string);
    $tegn = "NOT";
}
}
foreach($string as $value)
{
  $sql[] = "(tabel LIKE '%$value%');
}
$sql = implode(" " . $tegn . " ", $sql);
echo $sql;
Avatar billede sostack Nybegynder
17. januar 2003 - 14:25 #4
Så kan du jo selv bygge videre ;-}
Avatar billede ostehamster Nybegynder
01. februar 2003 - 23:07 #5
Jeg tror jeg lukker, og prøver sharksforum istedet...
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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