generated from microsoft/vscode-remote-try-php
- Notifications
You must be signed in to change notification settings - Fork 2
Rest
Le Thu Nguyen edited this page May 31, 2024 · 4 revisions
systemConfig.php. File này có nhiệm vụ mở cổng giao tiếp với MySQL và định nghĩa các HTTP statu codes trả về khi bạn thao tác với server (link tham khảo về chúng đây:
class systemConfig { function getStatusCodeMeeage($status){ $codes = Array( 100 => ‘Continue’, 101 => ‘Switching Protocols’, 200 => ‘OK’, 201 => ‘Created’, 202 => ‘Accepted’, 203 => ‘Non-Authoritative Information’, 204 => ‘No Content’, 205 => ‘Reset Content’, 206 => ‘Partial Content’, 300 => ‘Multiple Choices’, 301 => ‘Moved Permanently’, 302 => ‘Found’, 303 => ‘See Other’, 304 => ‘Not Modified’, 305 => ‘Use Proxy’, 306 => ‘(Unused)’, 307 => ‘Temporary Redirect’, 400 => ‘Bad Request’, 401 => ‘Unauthorized’, 402 => ‘Payment Required’, 403 => ‘Forbidden’, 404 => ‘Not Found’, 405 => ‘Method Not Allowed’, 406 => ‘Not Acceptable’, 407 => ‘Proxy Authentication Required’, 408 => ‘Request Timeout’, 409 => ‘Conflict’, 410 => ‘Gone’, 411 => ‘Length Required’, 412 => ‘Precondition Failed’, 413 => ‘Request Entity Too Large’, 414 => ‘Request-URI Too Long’, 415 => ‘Unsupported Media Type’, 416 => ‘Requested Range Not Satisfiable’, 417 => ‘Expectation Failed’, 500 => ‘Internal Server Error’, 501 => ‘Not Implemented’, 502 => ‘Bad Gateway’, 503 => ‘Service Unavailable’, 504 => ‘Gateway Timeout’, 505 => ‘HTTP Version Not Supported’ ); return (isset($codes[$status])) ? $codes[$status] : ”; } /// Trả về response using HTTP header function sendResponse($status = 200, $body = ”, $content_type = ‘text/html’) { $status_header = ‘HTTP/1.1 ‘ . $status . ‘ ‘ . $this->getStatusCodeMeeage($status); header($status_header); header(‘Content-type: ‘ . $content_type); echo $body; } //Dinh nghia connect to db }
<?php include(“../testExample/config/systemConfig.php”); class imageResources { private $dbReference; var $dbConnect; var $result; function __construct(){ } function __destruct(){ } //get images function getAllImageResource(){ $this->dbReference = new systemConfig(); $this->dbConnect = $this->dbReference->connectDB(); if ($this->dbConnect == NULL) { $this->dbReference->sendResponse(503,'{“error_message”:’.$this->dbReference->getStatusCodeMeeage(503).’}’); }else{ $sql = “SELECT * FROM xxx”; $number_per_page = $_POST[“number_per_page”]; $page = ($_POST[“page”]-1)*$number_per_page +1; $page_next = $_POST[“page”]*$number_per_page; //echo “$page”; $this->result = $this->dbConnect->query($sql); if($this->result->num_rows > 0){ // output data of each row $resultSet = array(); while($row = $this->result->fetch_assoc()) { $resultSet[] = $row; } $this->dbReference->sendResponse(200,'{“items”:’.json_encode($resultSet).’}’); }else{ //echo “0 results”; $this->dbReference->sendResponse(200,'{“items”:null}’); } } } } >