17. august 2003 - 14:11Der er
6 kommentarer og 1 løsning
Søgning på 2 felter i databasen ud fra et søgefelt
Jeg kunne godt tænke mig at man i min bogdatabase kunne søge på >>efternavn, fornavn<< i et søgefelt. Jeg har indtil videre lavet det således: $query = mysql_query("SELECT * FROM second WHERE forfatternavn_fornavn LIKE '%$_POST[soegeord]%' OR forfatternavn_efternavn LIKE '%$_POST[soegeord]%' ORDER BY forfatternavn_efternavn ASC") or die(mysql_error());
Her kan man kun søge på enten fornavn eller efternavn, hvilket jo ikke er godt.
Kan det lade sig gøre, at man i søgeformen kunne skrive >>efternavn, fornavn<< og få de eksakte poster?
I lang tid har samarbejdsbranchen fokuseret på at forbedre enhedsfunktioner – bedre kameraer, klarere lyd og smartere software. Men den virkelige forvandling handler ikke om funktioner.
Hmm, ja. Sådan må det være. Dvs. jeg har en forfatter som hedder Jesper Sørensen, hvor fornavn og efternavn er delt op i 2 kolonner. For at kunne finde posten skal man bare skrive >>efternavn, fornavn<< i søgeformen.
<?php $fullname = $_POST['soegeord']; $pos = strpos($fullname,','); // Finder ud af hvor kommaet er placeret i strengen $fornavn = substr($fullname,$pos+2); // Korter strengen ned så vi får fornavnet $efternavn = substr($fullname,0,$pos); // Korter strengen ned så vi får efternavnet $query = mysql_query("SELECT * FROM second WHERE forfatternavn_fornavn LIKE '%$fornavn%' AND forfatternavn_efternavn LIKE '%$efternavn%' ORDER BY forfatternavn_efternavn ASC") or die(mysql_error()); ?>
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.