hhunderter
Erfahrenes Mitglied
Guten Morgen,
Wie im Titel schon beschrieben, habe ich einen Debian 9 Server (64Bit) mit PHP 7.0.
Auf einen älteren Server hatte ich, um auf meine mdb-Datein zugreifen zu können, MDBTools benutzt gehabt.
Habe es wie gewohnt über apt-get installiert und in der " /etc/odbcinst.ini"-Datei
eingefügt.
Test PHP Datei:
Apache neu gestartet und Output:
Was hab ich vergessen?
Wie im Titel schon beschrieben, habe ich einen Debian 9 Server (64Bit) mit PHP 7.0.
Auf einen älteren Server hatte ich, um auf meine mdb-Datein zugreifen zu können, MDBTools benutzt gehabt.
Habe es wie gewohnt über apt-get installiert und in der " /etc/odbcinst.ini"-Datei
Code:
[MDBTools]
Description = MDBTools Driver
Driver = /usr/lib/x86_64-linux-gnu/odbc/libmdbodbc.so
UsageCount = 1
Test PHP Datei:
PHP:
<?php
error_reporting(-1);
ini_set('display_errors','On');
ini_set('display_errors',1);
ini_set('display_startup_errors',1);
$query = 'SELECT * FROM `Tabelle1`';
$mdb_file = '/Path/test.mdb';
if (!is_file($mdb_file)){
exit("File not found");
}
$uname = explode(" ",php_uname());
$os = $uname[0];
switch ($os){
case 'Windows':
echo "Windows\r\n<br>\r\n<br>\r\n";
$driver = '{Microsoft Access Driver (*.mdb)}';
break;
case 'Linux':
echo "Linux\r\n<br>\r\n<br>\r\n";
$driver = 'MDBTools';
break;
default:
exit("Don't know about this OS");
}
$dataSourceName = "odbc:Driver=$driver;DBQ=$mdb_file;";
try{
$pdo = new PDO($dataSourceName);
}catch(PDOException $e){
echo "Error: ".$e;
}
if (isset($pdo) and is_object($pdo)){
echo "Data:\r\n<br>\r\n<br>\r\n";
$sth = $pdo->prepare($query);
$sth -> execute();
foreach($sth as $row) {
print_r(array_value($row));
echo "\r\n<br>\r\n";
}
}
echo "\r\n<br>\r\n<br>\r\n";
print_r (PDO::getAvailableDrivers());
?>
Apache neu gestartet und Output:
Code:
Linux
Data:
Array ( [0] => mysql [1] => odbc )
Was hab ich vergessen?