друзья мой поисковый запрос ниже я wi sh, чтобы показать результаты, чье соединение "имя столбца"! = '0' мне понравилось (НЕ соединение = '0' ИЛИ соединение НУЛЬ)
, но почему-то я получаю следующую ошибку
(!) Неустранимая ошибка: необработанное исключение «PDOException» с сообщением «SQLSTATE [42000]: синтаксическая ошибка или нарушение прав доступа: 1064 У вас есть ошибка в вашем SQL синтаксис; проверьте руководство, соответствующее вашей версии сервера MySQL, на предмет правильного синтаксиса для использования рядом с '(НЕ соединение = 0; ИЛИ СОЕДИНЕНИЕ НЕДОСТАТОЧНО) ЗАКАЗАТЬ ПО ДАТЕ DES C LIMIT? СМЕЩЕНИЕ? в строке 1 '
вот мой код
foreach($search_fields as $field)
{
if(isset($_GET[$field]) && $_GET[$field] != 'All')
{
$and_clause[] = "`$field` = :$field";
$params[] = array(":$field",$_GET[$field],PDO::PARAM_STR);
}
}
$where_clause = '';
if(!empty($and_clause))
{
$where_clause = "WHERE (NOT connection = '0' OR connection IS NULL) " . implode(' AND ', $and_clause);
}
$query = "SELECT COUNT(*) FROM table $where_clause";
if(empty($params))
{
$stmt = $db->query($query);
}
else
{
$stmt = $db->prepare($query);
foreach($params as $param)
{
$stmt->bindValue($param[0],$param[1],$param[2]);
}
$stmt->execute();
}
$total = $stmt->fetchColumn();
$pages = ceil($total / $records_per_page);
$page = min($pages, filter_input(INPUT_GET, 'page', FILTER_VALIDATE_INT, array(
'options' => array(
'default' => 1,
'min_range' => 1,
),
)));
$offset = ($page - 1) * $records_per_page;
$params[] = array(':records_per_page',$records_per_page, PDO::PARAM_INT);
$params[] = array(':offset',$offset, PDO::PARAM_INT);
$query = "SELECT * FROM table $where_clause (NOT connection = '0' OR connection IS NULL) ORDER BY date DESC LIMIT :records_per_page OFFSET :offset";