Hej! :)
Jag har denna:
$Query="SELECT * FROM companies WHERE name LIKE '%companyname%' OR category LIKE '$category' OR town LIKE '$town'";
Mitt problem är att om man väljer "alla" kategorier(variabel: allcats) och/eller alla städer( variabel alltowns), hur man kan få in det i mySQL frågan?
Stort tack på förhand.
På sidan innan så har jag detta:
all categories(drop down meny)
bakeries
plumbers
etc
all towns( drop down meny)
London
Newcastle
etc
Companyname:(textfield)
@ndersMedlem sedan juni 200032 969 inlägg Varför använder du LIKE när du gör exakta jämförelser (dvs utan wildcard)? Använd =.
if ($category=="allcats")
$strCategory = "";
else
$strCategory = "OR category = '" . $category . "'";
if ($town=="alltowns")
$strTown = "";
else
$strTown = "OR town = '" . $town . "'";
$Query="SELECT * FROM companies WHERE name LIKE '%" . $companyname . "%' " . $strCategory . $strTown;
Nu kan jag inte php, men du förstår på ett ungefär vad jag menar hoppas jag.
(edit: jag gillar att konkatenera ordentligt. ;) )
Mvh
Fick köra med AND istället för OR, funkar bra nu. Tack för hjälpen.
if ($category=="allcats")
$strCategory = "";
else
$strCategory = " AND category = '" . $category . "' ";
if ($town=="alltowns")
$strTown = "";
else
$strTown = " AND town = '" . $town . "' ";
$Query="SELECT * FROM companies WHERE name LIKE '%" . $companyname . "%' " . $strCategory . $strTown;