在php中创建正确的mysql语句

20jt8wwn  于 2021-06-23  发布在  Mysql
关注(0)|答案(1)|浏览(302)

我正在创建一个简单的应用程序,它可以从数据库中读取数据并显示给用户。
我知道mysql的基本语法,也知道如何正确地编写它,但也许有一些不同/更漂亮的解决方案?
在数据库中搜索时,不必填写所有字段(例如,您只想查找名为“john”的人员,因此将字段“姓氏”留空)。
我需要在不使用空字段的情况下创建mysql语句,所以我想使用short if,类似于:

"SELECT * FROM offers WHERE ".($Company_Name!= NULL)?"":"Company_Name ='".$Company_Name."'"

但我有8个字段,所以我会为此做一个非常重要的声明。有没有更简单的方法来解决这个问题?
我在windows10上使用netbeans8.2,在apache服务器和数据库上使用xampp。

pkln4tw6

pkln4tw61#

在php中,执行以下操作:

// Initalizing query string
$sql = "SELECT * FROM table ";

// Preparing where conditions
$whr = array();
if (!empty($first_name)) {
    $whr[] = "first_name = '" . real_escape_string($first_name) . "'";
} 

/* Like this check for other variables/fields */

// Adding where statement
if (!empty($whr)) {
    $sql .= " WHERE ";
    $sql .= implode(' AND ', $whr);
}

// Now execute the query and fetch results

相关问题