gpt4 book ai didi

PHP PDO MYSQL WHERE ALL

转载 作者:行者123 更新时间:2023-11-29 00:01:09 25 4
gpt4 key购买 nike

我有以下用于搜索表的 mysql 准备语句。表中有一个 is_active 列。用户可以选择搜索真 (1)、假 (0) 或全部。在所有语句的情况下都需要搜索 true AND false。

由于系统是通过 :isActive 绑定(bind)的,如果用户想要同时搜索 true 和 false,我需要向 :isActive 应用什么值?在此先感谢您的帮助。

$stmt = $conn->prepare(
'SELECT company_id, name, alias, fk_company_type as type, is_active as active
FROM company
WHERE is_active = :isActive
AND name LIKE :srchField'
);

$stmt->bindParam(':srchField', $srchField, PDO::PARAM_INT);
//bind :srchField to $srchField in sql statement
$stmt->bindParam(':isActive', $isActive, PDO::PARAM_INT);

最佳答案

有一个 php 标签可以检查变量是否为整数,您可以使用它来解决这个问题。

$stmt = $conn->prepare('SELECT company_id, name, alias, fk_company_type as type, is_active as active FROM company WHERE (is_active = :isActive) AND (name LIKE :srchField)');

$stmt->bindParam(':srchField', $srchField, PDO::PARAM_INT); //bind :srchField to $srchField in sql statement

$isActive = is_int($int) ? $int : '0 OR 1'; // $int is an argument which to search option.
$stmt->bindParam(':isActive', $isActive, PDO::PARAM_INT);

关于PHP PDO MYSQL WHERE ALL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29771335/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com