PHP mdb Abfragen
Hallo zusammen
Ich konstruiere gerade eine Webseite, auf der kann man Namen auswählen und E-Mails verschicken bzw. auch SMS.
Jetzt wollte ich eine Schnittstelle machen zu einer Access Datenbank um dort die Namen und EMail Adressen zu extrahieren.
Leider klappt das bisher nur bedingt. In der mdb Datenbank sind manche Spalten mit Abständen deklariert (was ja eigentlich kein problem ist) und diese Enden immer mit einem Fehler.
Hier der Code soweit. Der funktioniert auch, wenn man eine Spalte ohne Abstände auswählt:
Das Problem ist bei SELECT First Name
Mit den Anführungszeichen geht es nicht und mit eckigen klammer [First Name] geht es auch nicht, es kommt immer 0 als Ergebnis raus bzw. vorher kam ein fehler bei den eckigen klammern, allerdings kommt jetzt als Ergebnis 0.
Wisst ihr evtl. weiter?
Vielen Dank
Ich konstruiere gerade eine Webseite, auf der kann man Namen auswählen und E-Mails verschicken bzw. auch SMS.
Jetzt wollte ich eine Schnittstelle machen zu einer Access Datenbank um dort die Namen und EMail Adressen zu extrahieren.
Leider klappt das bisher nur bedingt. In der mdb Datenbank sind manche Spalten mit Abständen deklariert (was ja eigentlich kein problem ist) und diese Enden immer mit einem Fehler.
Hier der Code soweit. Der funktioniert auch, wenn man eine Spalte ohne Abstände auswählt:
$dbName = "C:\Users\Benutzer\Desktop\mdb\datenbank.mdb";
if (!file_exists($dbName)) {
die("Could not find database file.");
}
$dbh = new PDO("odbc:DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=$dbName; Uid=; Pwd=;");
$sth = $dbh->prepare("SELECT `First Name` FROM tblCareGiver");
$sth->execute();
$array = array();
$array = $sth->fetchall(PDO::FETCH_COLUMN);
$row_count = count($array);
$i = 0;
do{
echo $array[$i] . "<br>";
$i++;
}while($i < $row_count);
Das Problem ist bei SELECT First Name
Mit den Anführungszeichen geht es nicht und mit eckigen klammer [First Name] geht es auch nicht, es kommt immer 0 als Ergebnis raus bzw. vorher kam ein fehler bei den eckigen klammern, allerdings kommt jetzt als Ergebnis 0.
Wisst ihr evtl. weiter?
Vielen Dank
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 232293
Url: https://administrator.de/forum/php-mdb-abfragen-232293.html
Ausgedruckt am: 09.04.2025 um 21:04 Uhr
5 Kommentare
Neuester Kommentar
Wieso schreibst du 'First Name', ich vermute mal das so deine tabelle nicht so heißen wird ;)
Und man nennt auch seine Spalten nicht "First Name" sonder first_name
Und dir ist schon bewusst das ein Apostroph (') für einen String steht, und die Hochkomma (") für alias verwendet werden?
Zum Beispiel:
lg
Und man nennt auch seine Spalten nicht "First Name" sonder first_name
Und dir ist schon bewusst das ein Apostroph (') für einen String steht, und die Hochkomma (") für alias verwendet werden?
Zum Beispiel:
SELECT "First Name" first_name FROM deinerTabelle;
lg
Zitat von @geocast:
Ok hattest recht, Spalte heißt wirklich FName, war nur der Alias. Manchmal kommt man sich schon blöd vor.
Funktioniert jetzt, danke!
Ok hattest recht, Spalte heißt wirklich FName, war nur der Alias. Manchmal kommt man sich schon blöd vor.
Funktioniert jetzt, danke!
Passiert jedem mal ;)
Super!
Gruß