xXxPeterPanxXx
Neues Mitglied
Hallo,
ich programmiere gerade das erstemal objektorientiert. Ich habe mich dazu entschieden die PDO-Klasse zu benutzen, leider gibt es dabei aber Probleme. Die Verbindung zur MySQL-Datenbank kriege ich aufgebaut, nur bekomme ich mit einer einfachen Abfrage keine Ergebnisse.
Das hier ist die Database-Klasse
Die eigentliche Methode getData() liefert keine Ergebnisse, die zu Testzwecken geschriebene Methode checkConnection() hingegen schon.
Hiermit rufe ich getData() auf:
Und als letztes noch der Codeauschnitt, mit dem ich getCountries() aufrufe:
Fehler oder Warnungen gibt es keine.
Ich würde mich freuen, Ihr euch den Code mal anschauen könntet und mir sagt, wieso getData() nicht funktioniert.
Gruß xXxPeterPanxXx
ich programmiere gerade das erstemal objektorientiert. Ich habe mich dazu entschieden die PDO-Klasse zu benutzen, leider gibt es dabei aber Probleme. Die Verbindung zur MySQL-Datenbank kriege ich aufgebaut, nur bekomme ich mit einer einfachen Abfrage keine Ergebnisse.
Das hier ist die Database-Klasse
PHP:
<?php
class Database {
private $DBName = 'xxxxxxx';
private $DBUser = 'xxxxxxxx';
private $DBPass = 'xxxxxxxx';
private $SelectedDatabase;
function __construct() {
try {
$this->SelectedDatabase = new PDO($this->DBName, $this->DBUser, $this->DBPass);
} catch (Exception $e){
header("HTTP/1.0 404 Not Found");
exit();
}
}
//SELECT
public function getData($DBQuery, array $BindVariables) {
$PreparedQuery = $this->SelectedDatabase->prepare($DBQuery);
for($i = 0; count($BindVariables) > $i; $i++) {
$PreparedQuery ->bindParam($BindVariables[$i][0], $BindVariables[$i][1]);
}
$PreparedQuery ->execute();
$result = $PreparedQuery->fetchAll(PDO::FETCH_ASSOC);
return $result;
}
public function checkConnection() {
$prepare = $this->SelectedDatabase->prepare('SELECT * FROM `countries`');
$prepare->execute();
$dbresult = $prepare->fetchAll(PDO::FETCH_ASSOC);
return $dbresult;
}
}
?>
Hiermit rufe ich getData() auf:
PHP:
class Countries {
public function getCountries($DatabaseObject) {
$query ='SELECT * FROM `countries`';
$countries = $DatabaseObject->getData($query, array());
return $countries;
}
}
PHP:
$allcountries = new Countries();
$allcountries->getCountries($DB);
print_r($allcountries);
Ich würde mich freuen, Ihr euch den Code mal anschauen könntet und mir sagt, wieso getData() nicht funktioniert.
Gruß xXxPeterPanxXx