|
442
|
1 |
<?php |
|
|
2 |
|
|
|
3 |
require_once(realpath(dirname(__FILE__) . "/../config.php")); |
|
|
4 |
|
|
|
5 |
function getDb() { |
|
|
6 |
global $config, $renkan_table; |
|
|
7 |
|
|
|
8 |
$db = new PDO( |
|
|
9 |
$config['db']['dsn'], $config['db']['user'], $config['db']['password'], |
|
|
10 |
array(PDO::ATTR_EMULATE_PREPARES => false, |
|
|
11 |
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION) |
|
|
12 |
); |
|
|
13 |
|
|
|
14 |
$querycheck = "SELECT 1 FROM ". RENKAN_PROJECT_TABLE ." LIMIT 1;"; |
|
|
15 |
|
|
|
16 |
$create_table = false; |
|
|
17 |
|
|
|
18 |
try { |
|
|
19 |
$res = $db->query($querycheck); |
|
|
20 |
if($res === false) { |
|
|
21 |
$create_table = true; |
|
|
22 |
} |
|
|
23 |
} |
|
|
24 |
catch(PDOException $e) { |
|
|
25 |
$create_table = true; |
|
|
26 |
} |
|
|
27 |
|
|
|
28 |
if($create_table === true) { |
|
|
29 |
$db->query("CREATE TABLE ". RENKAN_PROJECT_TABLE ." ( id CHAR(36) PRIMARY KEY, title VARCHAR(2048), renkan TEXT);"); |
|
|
30 |
} |
|
|
31 |
return $db; |
|
|
32 |
} |
|
|
33 |
|
|
|
34 |
function insertProject($renkanId, $title, $renkan) { |
|
|
35 |
$insertSql = "INSERT INTO ". RENKAN_PROJECT_TABLE ." (id, title, renkan) VALUES (:renkanId, :title, :renkan)"; |
|
|
36 |
$values = ['renkanId' => $renkanId, 'title' => $title, 'renkan' => $renkan]; |
|
|
37 |
return execStmt($insertSql, $values); |
|
|
38 |
} |
|
|
39 |
|
|
|
40 |
function updateProject($renkanId, $title, $renkan) { |
|
|
41 |
$updateSql = "UPDATE ". RENKAN_PROJECT_TABLE ." SET id = :renkanId, title = :title, renkan = :renkan;"; |
|
|
42 |
$values = ['renkanId' => $renkanId, 'title' => $title, 'renkan' => $renkan]; |
|
|
43 |
return execStmt($updateSql, $values); |
|
|
44 |
} |
|
|
45 |
|
|
|
46 |
function deleteProject($renkanId) { |
|
|
47 |
$deleteSql = "DELETE FROM ". RENKAN_PROJECT_TABLE ." WHERE id = :renkanId;"; |
|
|
48 |
$values = ['renkanId' => $renkanId]; |
|
|
49 |
return execStmt($deleteSql, $values); |
|
|
50 |
} |
|
|
51 |
|
|
|
52 |
function selectProject($renkanId) { |
|
|
53 |
$selectSql = "SELECT id, title, renkan FROM ". RENKAN_PROJECT_TABLE ." WHERE id = :renkanId;"; |
|
|
54 |
$values = ['renkanId' => $renkanId]; |
|
|
55 |
|
|
|
56 |
return execStmt($selectSql, $values)->fetchAll(PDO::FETCH_ASSOC); |
|
|
57 |
} |
|
|
58 |
|
|
|
59 |
function listProjects() { |
|
|
60 |
$selectSql = "SELECT id, title, renkan FROM ". RENKAN_PROJECT_TABLE .";"; |
|
|
61 |
return execStmt($selectSql, array())->fetchAll(PDO::FETCH_ASSOC); |
|
|
62 |
} |
|
|
63 |
|
|
|
64 |
function execStmt($sql, $values) { |
|
|
65 |
$stmt = getDb()->prepare($sql); |
|
|
66 |
$stmt->execute($values); |
|
|
67 |
return $stmt; |
|
|
68 |
} |