diff --git a/index.php b/index.php index 1ad1bc3..673483c 100644 --- a/index.php +++ b/index.php @@ -1,23 +1,5 @@ setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); - // Tabelle link erstellen, falls nicht vorhanden - $sql = 'CREATE TABLE IF NOT EXISTS link ( - link_id BIGINT(18) UNSIGNED AUTO_INCREMENT PRIMARY KEY, - link_url VARCHAR(30) NOT NULL, - link_name VARCHAR(30), - reg_date TIMESTAMP - )'; - - $pdo->exec($sql); // use exec() because no results are returned - } -catch(PDOException $e) -{ - echo $sql . "
" . $e->getMessage(); -} // Versuch der Objektorientierung @@ -32,25 +14,69 @@ class Link{ } } -$link1=new Link("therealblue.de", "https://therealblue.de"); +class dbLinkHandler +{ + private $pdo; -echo ''.$link1->name.'
'; + public function __construct() + { + try + { + // Verbindung zur Datenbank herstellen + $this->pdo = new PDO('mysql:host=localhost;dbname=linkdb', 'linkdb', 'linkdb'); + $this->pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); + + // Tabelle link erstellen, falls nicht vorhanden + + $sql = 'CREATE TABLE IF NOT EXISTS link ( + link_id BIGINT(18) UNSIGNED AUTO_INCREMENT PRIMARY KEY, + link_url VARCHAR(30) NOT NULL, + link_name VARCHAR(30), + reg_date TIMESTAMP + )'; + + $this->pdo->exec($sql); // use exec() because no results are returned + } + catch(PDOException $e) + { + echo $sql . "
" . $e->getMessage(); + } + } -/* Alt vor Obejktorientierung + public function saveLink($link) + { + $statement = $this->pdo->prepare('INSERT INTO link(link_url, link_name) VALUES (:link_url, :link_name)'); + $statement->execute + ([ + ':link_url' => $link->url, + ':link_name' => $link->name + ]); + } -$url = 'https://therealblue.de'; -$name = 'therealblue.de'; + public function getLinkList() + { + // Mit verschachtelten Arrays optimieren!! Array schlüssel id enthält array mit schlüssel link_id, link_name, etc (repräsentiert datensatz) + $list = array(); + $sql = "SELECT * FROM link"; + foreach ($this->pdo->query($sql) as $row) + { + $list[$row['link_name']] = $row['link_url']; + } -$statement = $pdo->prepare('INSERT INTO link(link_url, link_name) VALUES (:link_url, :link_name)'); -$statement->execute([ - ':link_url' => $url, - ':link_name' => $name -]); - -$sql = "SELECT * FROM link"; -foreach ($pdo->query($sql) as $row) { - echo ''.$row['link_name'].'
'; + return $list; + } +} + +// Main +$db = new dbLinkHAndler(); + +$link1=new Link("cloud.therealblue.de", "https://cloud.therealblue.de"); + +$db->saveLink($link1); + +foreach($db->getLinkList() as $url => $name) +{ + echo ''.$name.'
'; } -*/ ?> \ No newline at end of file