Avatar billede siredwarddk Nybegynder
09. maj 2006 - 00:29 Der er 3 kommentarer og
1 løsning

Søg med samme data, som både id og navn

Hej,

Jeg skal have skidtet til at kunne vælge en kategori både ud fra et id nr. og/eller et navn:

$categoryIs = mysql_query("SELECT * FROM Categories WHERE categoryId = $category OR categoryName = '$category'");


med andre ord: $category kan både være et tal eller en tekststreng.

Er der nogen der kan fortælle mig hvorfor det der ikke virker?


Mvh:
Lauge
Avatar billede siredwarddk Nybegynder
09. maj 2006 - 00:33 #1
Skulle måske lige tilføje:

1] Det virker med tal, men ikke med tekst.

2] Det virker også med tekst hvis jeg fjerner den del der tjekker tal
Avatar billede barklund Nybegynder
09. maj 2006 - 08:35 #2
Det skyldes jo, at hvis der står en tekst for $category, så er sætningen jo ugyldig:

... WHERE categoryId = Kategori OR categoryName = 'Kategori'

Det går jo ikke med plaintext på den måde midt i sætningen. Put quotes om begge dele (mysqwl kan godt sammenligne 1 og '1'):

$categoryIs = mysql_query("SELECT * FROM Categories WHERE categoryId = '$category' OR categoryName = '$category'");

Så virker det :)

--
Morten Barklund
Avatar billede siredwarddk Nybegynder
09. maj 2006 - 17:47 #3
Takker :)
Avatar billede barklund Nybegynder
10. maj 2006 - 09:39 #4
Tark for points :)
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
Computerworld tilbyder specialiserede kurser i database-management

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