-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathclass.php
144 lines (134 loc) · 3.47 KB
/
class.php
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
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
<?php
/**
* Database connection
* @Author: Mohammed Saad
=====================================
PROPERTY OF MOHAMMED SAAD
* instagram = https://www.instagram.com/mohammed.__.saad/
*/
require_once('rb.php');
require_once('config.php');
require_once('sessions.php');
// use DB as DB;
class Operations extends DB
{
/**
* Connecting to Database
*/
public function __construct()
{
$this->DB_Connect(true);
}
/**
* @param tablename,array of table fields to be inserted
* @return id of inserted data else @return false
*/
public function insert($table, $fields)
{
$insertData = R::dispense($table);
foreach ($fields as $key => $value) {
$insertData->$key = $value;
}
$id = R::store($insertData);
if ($id) {
return $id;
} else {
return false;
}
}
/**
* @param tablename,array_containing_fields,id
* fields and their values to be updated
* @return true if updated else @return false
*/
public function update($table, $id, $fields)
{
$updateData = R::load($table, $id);
if ($updateData['id'] != 0) {
foreach ($fields as $key => $value) {
$updateData->$key = $value;
}
R::store($updateData);
return true;
} else {
return false;
}
}
/**
* @param table-name,id
* @return true if deleted else @return false
*/
public function delete($table, $id)
{
$deleteData = R::load($table, $id);
if ($deleteData['id'] != 0) {
R::trash($deleteData);
return true;
} else {
return false;
}
}
/**
* @param tablename,userid
* @return array
*/
public function SelectByID($table, $id)
{
$return = R::load($table, $id);
if ($return['id'] != 0) {
return $return;
} else {
return false;
}
}
/**
* @param table-name
* @return Multi-Dimensional-array of that table
*/
public function SelectAll($table)
{
return R::findAll($table);
}
/**
* @param tablename,array-arguments-list
* arguments-list example : id=1,name=myname
* @return Multi-Dimensional-array
*/
public function SelectByArgs($table, $args)
{
$sql = "";
$condition = "";
foreach ($args as $key => $value) {
$condition .= $key . " = '" . $value . "' AND ";
}
$condition = substr($condition, 0, -5);
$sql .= "SELECT * FROM " . $table . " WHERE " . $condition;
$query = R::getAll($sql);
if ($query)
return $query;
else
return FALSE;
}
/**
* @param table-name,array-arguments the details to check
* arguments-list example : id=1,name=myname
* @return TRUE/FALSE
* TRUE if exists in DB else FALSE if not exists
*/
public function Validate($table, $args)
{
$sql = "";
$condition = "";
foreach ($args as $key => $value) {
$condition .= $key . " = '" . $value . "' AND ";
}
$condition = substr($condition, 0, -5);
$sql .= "SELECT * FROM " . $table . " WHERE " . $condition;
$query = R::getAll($sql);
return ($query) ? TRUE : FALSE;
}
public function __destruct()
{
$this->DB_Connect(false);
}
}