使用php连接Firebird localhost DB

使用php连接Firebird localhost DB,php,firebird,Php,Firebird,我在windows服务器上安装了firebird服务器和firebird数据库。这个数据库上的端口是8095。在这台服务器上我安装了PHP,我需要用PHP连接数据库,下面是我的代码,我尝试过但没有成功: <?php $host = 'localhost:D:\path\to\Database.FDB'; $username = 'user'; $password = 'pass'; $dbh = ibase_connect($host, $username, $password); $s

我在windows服务器上安装了firebird服务器和firebird数据库。这个数据库上的端口是8095。在这台服务器上我安装了PHP,我需要用PHP连接数据库,下面是我的代码,我尝试过但没有成功:

<?php

$host = 'localhost:D:\path\to\Database.FDB';
$username = 'user';
$password = 'pass';
$dbh = ibase_connect($host, $username, $password);
$stmt = 'SELECT * FROM StoreCards';
$sth = ibase_query($dbh, $stmt);
while ($row = ibase_fetch_object($sth)) {
    echo $row->Code, "\n";
}
ibase_free_result($sth);
ibase_close($dbh);

?>

只要您说Firebird在非标准8095端口上运行(通常为3050),您就应该在ibase_connect中指定它。类似于ibase_pconnect'host/port:path_或_alias'。。。还要检查端口是否可访问,是否没有阻止防火墙规则等

因此:


此外,考虑使用PDO库,它支持命名参数,更易于使用。
$dbh = ibase_pconnect("ipaddr:path-to-db.FDB", "user", "pass") or die('die message');
    $q = ibase_query($dbh, "select * from StoreCards");
    while ($r = ibase_fetch_object($q)) {
        $some_value = $r->CODE;
        echo $some_value;
    }
$host = 'localhost/8095:D:\path\to\Database.FDB';