Avatar billede tlunde Nybegynder
13. maj 2007 - 14:01 Der er 3 kommentarer og
1 løsning

Hjælp til søgefunktion?

$profilnavn = $_REQUEST['profilnavn'];
$koen = $_REQUEST['koen'];
   
$sql = "SELECT * FROM brugere WHERE";
   
## Tjekker om der er indtastet et profilnavn
if ($profilnavn != '') {
    $sql .= " brugernavn LIKE '%".$profilnavn."%'";
}
   
## Tjekker efter hvilket køn der er valgt
if ($koen != '') {
    if ($koen == 'alle') {
        $sql .= " AND (koen = 'p' OR koen = 'm' OR koen = 'k')";
    }
    else {
        $sql .= " koen = '$koen'";
    }
}

echo $sql .= " ORDER BY keep_alive_tid DESC";

-------------------------------------------

Sådan ser min sql ud nu, men jeg ved ikke lige hvordan jeg "rigtigt" skal strikke den sammen, for jeg har et problem hvis $profilnavn ikke er udfyldt, så kommer der et problem med "AND".

Kan i se hvad jeg mener?
Nogen der lige kan hjælpe mig igang?
Avatar billede tlunde Nybegynder
13. maj 2007 - 14:08 #1
De 2 sql sætninger skulle gerne komme til at se sådan ud, alt efter om man vælger profilnavn eller køn:

Profilnavn:
SELECT * FROM brugere WHERE brugernavn = '%".$profilnavn."%' ORDER BY keep_alive_tid DESC

Køn:
SELECT * FROM brugere WHERE koen = '$koen' ORDER BY keep_alive_tid DESC

Begge:
SELECT * FROM brugere WHERE brugernavn = '%".$profilnavn."%' AND koen = '$koen' ORDER BY keep_alive_tid DESC
Avatar billede straszek Praktikant
13. maj 2007 - 15:08 #2
# Tjekker om der er indtastet et profilnavn
if ($profilnavn != '') {
    $sql .= " brugernavn LIKE '%".$profilnavn."%'";
}

## Tjekker efter hvilket køn der er valgt
if ($koen != '') {
    if ($koen == 'alle') {
        $sql .= "  (koen = 'p' OR koen = 'm' OR koen = 'k')";
    }
    else {
        $sql .= " koen = '$koen'";
    }
}

Flyt lidt rund på dine AND's så funger det

Søren
Avatar billede straszek Praktikant
13. maj 2007 - 15:10 #3
der smuttede lige noget : nedenståender burde virke:
# Tjekker om der er indtastet et profilnavn
if ($profilnavn != '') {
    $sql .= " brugernavn LIKE '%".$profilnavn."%' AND";
}

## Tjekker efter hvilket køn der er valgt
if ($koen != '') {
    if ($koen == 'alle') {
        $sql .= "  (koen = 'p' OR koen = 'm' OR koen = 'k')";
    }
    else {
        $sql .= " koen = '$koen'";
    }
}
Avatar billede tlunde Nybegynder
21. januar 2008 - 09:00 #4
lukker...
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