09. august 2005 - 22:10Der er
11 kommentarer og 1 løsning
søger ikke på "OR"
Jeg har flg.: where sb1_butiksnavn like '%$_POST[sogeord]%' OR sb1_postnr = '%$_POST[postnr]%'
Jeg søger via en form med indput: 'sogeord' og 'postnr' ... Men hvis jeg kun søger på postnr, så viser den ikke data med det indtastede postnr. først ? ligesom den injoreres?
Prøv med paranteser omkring de to udtryk ('%$_POST[sogeord]%') og (sb1_postnr = '%$_POST[postnr]%') Den misforstår hvad OR funktionen skal dække og laver en OR mellem '%$_POST[sogeord]%' og sb1_postnr og checker derefter om det er lig med '%$_POST[postnr]%'
Alternativt kunne du forsøge dig med at teste om sogeord indeholder noget i selve SQL sætningen. Det kommer godt nok til at se lidt "forkert" ud, men teoretisk burde virke:
where '$_POST[sogeord]' <> '' and sb1_butiksnavn like '%$_POST[sogeord]%' OR '$_POST[postnr]' <> '' and sb1_postnr = '%$_POST[postnr]%'
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.