X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=lib%2Fdb.php;fp=lib%2Fdb.php;h=0f280a459e8efbdbeb55c0de5730481678b6cf9b;hb=6405835a808d5ac4986ff463a7be0b146058440d;hp=0000000000000000000000000000000000000000;hpb=265d1374774a414bfe668b15a4508d5315309ae3;p=Project_webapp.git diff --git a/lib/db.php b/lib/db.php new file mode 100644 index 0000000..0f280a4 --- /dev/null +++ b/lib/db.php @@ -0,0 +1,116 @@ +connection = $connection; + + if (!$this->connection->connect_errno) { + $this->connected = true; + } else { + die('Fail to connect to the RDBMS'); + } + + return $this->connection; + } + + /** + * [close description] + * @return [type] [description] + */ + public function close() + { + if ($this->connected && $this->connection->close()) { + $this->connected = false; + } else { + die('Fail to close the connection to the RDBMS'); + } + } + + /** + * [query description] + * @param [type] $sql_query [description] + * @return [type] [description] + */ + public function query($sql_query) + { + if ($this->connected && !($query_result = $this->connection->query($sql_query))) { + echo "Fail to execute the SQL query : " . $sql_query; + } + return $query_result; + } + + /** + * [prepare_query description] + * @param [type] $prepared_query [description] + * @return [type] [description] + */ + public function prepare_query($prepared_query) + { + $this->current_pquery = $prepared_query; + if ($this->connected && !($this->current_stmt = $this->connection->prepare($this->current_pquery))) { + // Empty the currently stored prepared query in the failure case + $this->current_pquery = ""; + echo "Fail to prepare SQL query : (" . $this->connection->errno . ") " . $this->connection->error . " - " . $this->current_pquery; + } + return $this->current_stmt; + } + + /** + * [prepared_query_bind_param description] + * @param [type] $params [description] + * @return [type] [description] + */ + public function prepared_query_bind_param(...$params) + { + $rt_val = $this->current_stmt->bind_param($params); + if (!$rt_val) { + echo "Fail to link parameters to SQL query : (" . $this->current_stmt->errno . ") " . $this->current_stmt->error . " - " . $this->current_pquery; + } + return $rt_val; + } + + /** + * [run_prepared_query description] + * @return [type] [description] + */ + public function run_prepared_query() + { + $rt_val = $this->current_stmt->execute(); + if (!$rt_val) { + echo "Fail to execute SQL query : (" . $this->current_stmt->errno . ") " . $this->current_stmt->error . " - " . $this->current_pquery; + } + return $rt_val; + } + + /** + * [close_prepared_query description] + * @return [type] [description] + */ + public function close_prepared_query() + { + $rt_val = $this->current_stmt->close(); + if (!$rt_val) { + echo "Fail to close SQL query : (" . $this->current_stmt->errno . ") " . $this->current_stmt->error . " - " . $this->current_pquery; + } + return $rt_val; + } +} +?>