在 PHP 中使用 ODBC 函数

Subodh Poudel 2022年5月13日
在 PHP 中使用 ODBC 函数

本文将介绍如何在 PHP 中使用 ODBC 及其功能。

在 PHP 中使用 ODBC 函数

开放式数据库连接 (ODBC) 是一种 API,可让我们从各种数据库应用程序访问数据库。我们也可以将 ODBC 与 MySQL 数据库一起使用。

要使用 MySQL 数据库,我们需要一个 ODBC 连接器驱动程序。我们可以从这里下载驱动程序。

PHP 提供了将数据库与 ODBC 连接的函数。我们可以使用 odbc_connect() 函数来建立数据库连接。

同样,我们可以使用 odbc_exec() 来执行查询。假设我们安装并设置了驱动程序,我们将演示如何连接到数据库并执行查询。

要建立数据库连接,我们需要驱动程序、主机名、数据库、用户名和密码等详细信息。odbc_connect() 函数将这些详细信息作为参数。

例如,创建变量 $server$database$user$password$driver,并将相关信息存储在这些变量中。

接下来,创建一个 $connection 变量并分配以下值。

"DRIVER=$driver;
SERVER=$server;
DATABASE=$database";

接下来,使用 odbc_connect() 函数并按顺序提供变量 $connection$user$password 作为参数。将函数分配给 $conn 变量。

该变量返回一个布尔值。

现在,我们将检查与数据库的连接是否已建立并运行查询。用 $conn 作为参数编写 if 条件。

在内部,创建一个 $mail 变量并存储将针对数据库进行检查的电子邮件。接下来,创建一个 $query 变量并在其中编写一个 SQL 查询。

查询如下所示。

SELECT COUNT(*) AS userEmail FROM users WHERE email = '$mail'

该查询返回 users 表中 email 字段具有 $mail 变量值的条目数。编写查询后,使用 odbc_exec() 函数执行它。

将变量 $conn$query 写为函数中的参数。在函数旁边,使用 or 运算符和包含 odbc_errormsg() 函数的 die 函数。

将整个操作分配给 $result 变量。如果查询失败,脚本将终止,并显示错误消息。

接下来,使用 if 条件检查 $result 变量,并在 if 块内显示 result foundecho

在这里,我们使用数据库 odbcd,服务器是 localhost。用户名是 root,没有密码。

数据库中有表 users。该表包含以下数据。

+----+---------+--------+-----------------+
| id | role    | name   | email           |
+----+---------+--------+-----------------+
|  1 | admin   |  harry | admin@email.com |
|  2 | user    |  joe   | user@email.com  |
+----+---------+--------+-----------------+

数据库匹配 $mail 变量中的电子邮件,显示输出部分中显示的结果。这样,我们就可以在 PHP 中运行与 SQL 数据库通信的 ODBC 函数。

$server = "localhost";
$database = "odbcdb";
$user = "root";
$password = "";
$driver = "MYSQL ODBC 3.51 DRIVER"

$connection = "DRIVER=$driver; SERVER=$server; DATABASE=$database";

$conn = odbc_connect($connection, $user, $password);

if ($conn) {
    $mail = 'user@email.com';
    $query = "SELECT COUNT(*) AS userEmail FROM users WHERE email = '$mail'";
    $results = odbc_exec($conn, $query) or die(odbc_errormsg());
    if( $results ) {
        echo 'result found';
    }
}

输出:

result found
作者: Subodh Poudel
Subodh Poudel avatar Subodh Poudel avatar

Subodh is a proactive software engineer, specialized in fintech industry and a writer who loves to express his software development learnings and set of skills through blogs and articles.

LinkedIn

相关文章 - PHP Function