Add uebung10

This commit is contained in:
2019-07-11 12:45:46 +02:00
parent 24aeae1df8
commit b75da65cd3
12 changed files with 468 additions and 0 deletions

74
uebung10/Database.php Normal file
View 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];
}
}