Я построил динамический поиск с использованием PHP & MySQL. Все работает нормально, и код может одновременно искать несколько значений.Динамический поиск PHP и MYSQL с несколькими полями не имеет диапазона дат
$query="";
$query .=" select * from customers where 1 ";
if(strlen($adv_s_city)>0){
$query .=" and city = '$adv_s_city' ";
}
if(strlen($adv_s_personalIdType)>0)
{
$query .=" and pesonal_identity_type = '$adv_s_personalIdType' ";
}
if(strlen(isset($_POST['adv_s_gender'])) > 0)
{
$query .=" and gender = '$adv_s_gender' ";
}
Однако, когда я добавить ниже код к нему и указать диапазон дат между двумя датами, он дает мне значения между этими двумя датами, но поиск других полей не будет работать или скачет выше коды. Что могло бы пойти не так?
if(strlen($adv_s_FromDate)>0 && strlen($adv_s_ToDate)>0)
{
$query .=" and (date between '$adv_s_FromDate' and '$adv_s_ToDate') ";
}
положить 'echo $ query' наконец и проверить ваш запрос, это поможет вам отладить. –
Это может показаться сумасшедшим, но этот простой запрос echo $ дал мне достаточно информации о том, что я делаю и запрашиваю, и я мог бы решить проблему. Огромное спасибо :) –
А теперь посмотрите на sql-инъекции и параметризованные запросы – Strawberry