Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function callPHP() {
- $.ajax ({
- type: "GET",
- datatype: "application/json",
- url: "MySQLDao.php",
- data: { action : 'getResults' },
- success: function(output) {
- alert(output);
- }
- });
- }
- callPHP();
- <?php
- require("Conn.php");
- header("Access-Control-Allow-Origin: *");
- error_reporting(E_ALL); ini_set('display_errors', 1);
- //Class for holding queries
- class MySQLDao
- {
- private $dbhost = null;
- private $dbuser = null;
- private $dbpass = null;
- private $mysqli = null;
- private $dbname = null;
- private $result = null;
- //constructor
- function __construct()
- {
- $this->dbhost = Conn::$dbhost;
- $this->dbuser = Conn::$dbuser;
- $this->dbpass = Conn::$dbpass;
- $this->dbname = Conn::$dbname;
- }
- //Attempt a connection to the database
- public function openConnection()
- {
- //Try and connect to the database
- $this->mysqli = new mysqli($this->dbhost, $this->dbuser, $this->dbpass, $this->dbname);
- //If the connection threw an error, report it
- if (mysqli_connect_errno())
- {
- return false;
- }
- else
- {
- return true;
- }
- }
- //Get method for retrieving the database conection
- public function getConnection()
- {
- return $this->mysqli;
- }
- //Close the connection to the database
- public function closeConnection()
- {
- //If there is a connection to the database then close it
- if ($this->mysqli != null)
- $this->mysqli->close();
- }
- //-----------------------------------QUERY METHODS-------------------------------------
- public function generateRoomID()
- {
- $sql = "INSERT INTO room (room_id) VALUES (null);";
- $result = $this->mysqli->query($sql);
- if ($result == true)
- {
- $toReturn["status"] = true;
- $toReturn["roomID"] = $this->mysqli->insert_id;
- return $toReturn;
- }
- else
- {
- $toReturn["status"] = false;
- $toReturn["message"] = mysql_error($this->mysqli);
- return $toReturn;
- }
- }
- public function saveRoom($data)
- {
- $roomID = $data[0];
- $roomDescription = $data[1];
- $columns = $data[2];
- $rows = $data[3];
- $this->mysqli->autocommit(FALSE);
- $this->mysqli->query("UPDATE room SET room_description='".$roomDescription."' WHERE room_id='".$roomID."';");
- for ($i = 0; $i<count($columns); $i++)
- {
- for ($j = 1; $j<=$rows[$i]; $j++)
- {
- $currentLabel = "{$columns[$i]}{$j}";
- $this->mysqli->query("INSERT INTO shelf (shelf_label) VALUES ('".$currentLabel."');");
- $shelfID = $this->mysqli->insert_id;
- $this->mysqli->query("INSERT INTO room_shelf (room_id, shelf_id) VALUES ('".$roomID."','".$shelfID."');");
- }
- }
- if ($this->mysqli->commit())
- {
- $toReturn["status"] = true;
- $toReturn["message"] = "Room Created";
- return $toReturn;
- }
- else
- {
- $this->mysqli->rollback();
- $toReturn["status"] = false;
- $toReturn["message"] = "SQL Error";
- return $toReturn;
- }
- }
- public function updateShelf($data)
- {
- $shelfID = $data[0];
- $itemName = $data[1];
- }
- public function getRoomDetails($data)
- {
- $roomID = $data[0];
- $sql = "SELECT room.room_description, shelf.shelf_label, shelf.shelf_id FROM room INNER JOIN room_shelf ON room.room_id=room_shelf.room_id INNER JOIN shelf ON shelf.shelf_id=room_shelf.shelf_id WHERE room.room_id='".$roomID."';";
- $result = $this->mysqli->query($sql);
- if (mysqli_num_rows($result) > 0)
- {
- $toReturn["status"] = true;
- $toReturn["message"] = "Room Found";
- $toReturn["room_description"] = $row['room_description'];
- $shelves = [];
- foreach ($result as $row)
- {
- $currentShelf["shelf_label"] = $row['shelf_label'];
- $currentShelf["shelf_id"] = $row['shelf_id'];
- array_push($shelves, $currentShelf);
- }
- $toReturn["shelves"] = $shelves;
- return $toReturn;
- }
- else
- {
- $toReturn["status"] = false;
- $toReturn["title"] = "Error";
- $toReturn["message"] = "Room Not Found";
- return $toReturn;
- }
- }
- public function getResults($data)
- {
- $sql = "SELECT room.room_description FROM room WHERE room.room_id = 1";
- $result = $this->mysqli->query($sql);
- echo json_encode($result);
- }
- }
- $daoObj = new MySQLDao();
- $daoObj->getResults();
- ?>
- <?php
- class Conn
- {
- public static $dbhost = "xxx";
- public static $dbname = "xxx";
- public static $dbuser = "xxx";
- public static $dbpass = "xxx";
- }
- ?>
- <?php
- require("Conn.php");
- require("MySQLDao.php");
- $handle = fopen("php://input", "rb");
- $raw_post_data = '';
- while (!feof($handle)) {
- $raw_post_data .= fread($handle, 8192);
- }
- fclose($handle);
- if (empty($raw_post_data))
- {
- $returnValue["status"] = false;
- $returnValue["title"] = "Error";
- $returnValue["message"] = "No Data Recieved";
- echo json_encode($returnValue);
- return;
- }
- else
- {
- $dao = new MySQLDao();
- if ($dao->openConnection() == false)
- {
- $returnValue["status"] = false;
- $returnValue["title"] = "Error";
- $returnValue["message"] = "Connection Could Not Be Established Between Server And Database";
- echo json_encode($returnValue);
- }
- else
- {
- //Decodes data, dont change
- $body = json_decode($raw_post_data, true);
- $recieved = $body["data"];
- //Gets the result of a query
- //$result = $dao->MySQLDaoMethodName(parameters);
- //Return the result of the query
- echo json_encode($result);
- }
- $dao->closeConnection();
- return;
- }
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement