Add uebung10
This commit is contained in:
74
uebung10/Database.php
Normal file
74
uebung10/Database.php
Normal file
@@ -0,0 +1,74 @@
|
||||
<?php
|
||||
|
||||
|
||||
class Database
|
||||
{
|
||||
|
||||
private $connection;
|
||||
|
||||
/**
|
||||
* Database constructor.
|
||||
*
|
||||
* Baut die Verbindung zur Datenbank auf
|
||||
*/
|
||||
public function __construct()
|
||||
{
|
||||
// MySQL-Zugangsdaten
|
||||
// Hier: Automatisch auslesen aus .my.cnf. Sonst einfach von Hand eintragen
|
||||
$user = get_current_user(); // Benutzer, dem diese Datei gehört!
|
||||
$myCnf = parse_ini_file("/home/$user/.my.cnf");
|
||||
|
||||
$host = $myCnf['host'];
|
||||
$user = $myCnf['user'];
|
||||
$password = $myCnf['password'];
|
||||
$database = $myCnf['database'];
|
||||
|
||||
$this->connection = new mysqli($host, $user, $password, $database);
|
||||
}
|
||||
|
||||
/**
|
||||
* Schließt die Verbindung zru Datenbank
|
||||
*/
|
||||
public function __destruct()
|
||||
{
|
||||
$this->connection->close();
|
||||
}
|
||||
|
||||
public function getQuestions($n = 0)
|
||||
{
|
||||
if ($n == 0) {
|
||||
$sql = "SELECT * FROM questions";
|
||||
} else {
|
||||
//n ist gesetzt
|
||||
$sql = "SELECT * FROM questions LIMIT $n";
|
||||
}
|
||||
|
||||
$result = $this->connection->query($sql);
|
||||
$resultArray = [];
|
||||
|
||||
while ($line = $result->fetch_assoc()) {
|
||||
array_push($resultArray, $line);
|
||||
}
|
||||
|
||||
$result->free();
|
||||
|
||||
return $resultArray;
|
||||
}
|
||||
|
||||
public function getQuestion($id)
|
||||
{
|
||||
$result = $this->connection->query("SELECT * FROM questions WHERE id = $id LIMIT 1");
|
||||
|
||||
$resultArray = [];
|
||||
|
||||
while ($line = $result->fetch_assoc()) {
|
||||
array_push($resultArray, $line);
|
||||
}
|
||||
|
||||
$result->free();
|
||||
|
||||
return $resultArray[0];
|
||||
}
|
||||
|
||||
|
||||
}
|
Reference in New Issue
Block a user