php Bookmarks Работа закладками class Bookmarks extends Zend_Db_Table_

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
<?php
/**
* Bookmarks
*
* Работа с закладками
*
*/
class Bookmarks extends Zend_Db_Table_Abstract {
/**
* Имя таблицы
* @var string
*/
protected $_name = 'Bookmarks';
/**
* Получить книги либо книгу
* @param int $id id закладки
* @return true
*/
public function orAddDel($id) {
$readerid = Zend_Auth::getInstance()->getIdentity()->id;
// Создаем объект Zend_Db_Select
$sql = $this->getAdapter()->select('id')
// Таблица из которой делается выборка
->from($this->_name)
// Проверка если уже закладка
->where('readerid = ?', $readerid)
->where('bookid = ?', $id)
;
// Проверяем существует закладка
$stmt = $this->getAdapter()->query($sql);
// Получение данных
$result = $stmt->fetch();
if($result['id']) {
// Делаем запрос
$sql = $this->getAdapter()->quoteInto('id = ?', $result['id']);
//Удоляем закладку
parent::delete($sql);
}
else {
$data = array(
'readerid' => $readerid,
'bookid' => $id,
);
// Вызываем метод который добавляет данные
parent::insert($data);
}
return true;
}