76 lines
2.0 KiB
PHP
76 lines
2.0 KiB
PHP
<?php
|
|
class Link{
|
|
public $name;
|
|
public $url;
|
|
|
|
public function __construct($newName, $newUrl){
|
|
$this->name = $newName;
|
|
$this->url = $newUrl;
|
|
}
|
|
}
|
|
|
|
class dbLinkHandler
|
|
{
|
|
private $pdo;
|
|
|
|
public function __construct()
|
|
{
|
|
try
|
|
{
|
|
// Verbindung zur Datenbank herstellen
|
|
$this->pdo = new PDO('mysql:host=localhost;dbname=linkvz', 'linkvz', 'linkvz');
|
|
$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(50) NOT NULL,
|
|
link_name VARCHAR(100),
|
|
reg_date TIMESTAMP
|
|
)';
|
|
|
|
$this->pdo->exec($sql); // use exec() because no results are returned
|
|
}
|
|
catch(PDOException $e)
|
|
{
|
|
echo $sql . "<br>" . $e->getMessage();
|
|
}
|
|
}
|
|
|
|
public function saveLink($link)
|
|
{
|
|
try
|
|
{
|
|
$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
|
|
]);
|
|
}
|
|
catch(PDOException $e)
|
|
{
|
|
echo $sql . "<br>" . $e->getMessage();
|
|
}
|
|
}
|
|
|
|
public function getListReverse()
|
|
{
|
|
// 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 ORDER BY link_id DESC";
|
|
|
|
return $this->pdo->query($sql);
|
|
}
|
|
|
|
public function getList()
|
|
{
|
|
// 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";
|
|
|
|
return $this->pdo->query($sql);
|
|
}
|
|
}
|
|
?>
|