2015-10-05 158 views
-3

我想用php-sqlite製作一個簡單的web服務。我找到了一個很好的起點示例,但我需要一個幫助來修改從mysql到sqlite的連接。我生鏽與PHP。 那麼如何更改下面發佈的代碼以反映sqlite連接?SQLite版本的mysql函數

class API extends REST 
{ 
public $data = ""; 
const DB_SERVER = "localhost"; 
const DB_USER = "Database_Username"; 
const DB_PASSWORD = "Database_Password"; 
const DB = "Database_Name"; 

private $db = NULL; 

public function __construct() 
{ 
parent::__construct();// Init parent contructor 
$this->dbConnect();// Initiate Database connection 
} 

//Database connection 
private function dbConnect() 
{ 
$this->db = mysql_connect(self::DB_SERVER,self::DB_USER,self::DB_PASSWORD); 
if($this->db) 
mysql_select_db(self::DB,$this->db); 
} 
+0

請嘗試查找SQLite版本的mysql函數? SO不是免費的「轉換我的代碼」網站。 – Epodax

+0

Epodax 5是什麼意思,它不是一個免費的「轉換我的代碼」網站。 – sundsx

+0

http://www.php.net/sqlite –

回答

0

在必要的情況下這是如何讓SQLite版本的mysql函數!

<?php 
require_once("Rest.inc.php"); 

class API extends REST { 
//inizio scop 
    public $data = ""; 

    public function __construct(){ 
     parent::__construct();    // Init parent contructor 
     $this->dbConnect();     // Initiate Database connection 
    } 

    public function processApi(){ 
// echo "HELLO API"; 
     $func = strtolower(trim(str_replace("/","",$_REQUEST['rquest']))); 
     if((int)method_exists($this,$func) > 0) 
      $this->$func(); 
     else 
      $this->response('',404); // If the method not exist with in this class, response would be "Page not found". 
    } 

    private function dbConnect(){ 
    // echo "HELLO BOY"; 
     try { 
    $this->db = new PDO('sqlite:model.sqlite3'); 
    $this->db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
    } 
    catch(PDOException $e) { 
    echo $e->getMessage(); 
    } 
    return $this->db; 

    } 
    /// 
    private function discipline(){ 

    echo $this->get_request_method(); 
    if($this->get_request_method() != "GET") 
    { 
    $this->response('',406); 
    } 
    $risultato = array(); 
    $result = $this->db->query('SELECT * FROM discipline' , PDO::FETCH_ASSOC); 

    $rows = count ($result);  
    if ($rows >0) { 

    //echo "Number of righe: $rows"; 
    foreach($result as $row) 
    { 
    $risultato[] = $row; 
    } 
    $carso = $risultato; 
    echo json_encode($carso, JSON_PRETTY_PRINT); 
    $this->response($this->json($result), 200); 
    $data = $carso; 
    } else { 
    $this->response('',204); // If no records "No Content" status; 
    } 

    } 

    public function json($data){ 
     if(is_array($data)){ 
      return json_encode($data, JSON_PRETTY_PRINT); 
     } 
    } 

} 

// Initiate Library 

$api = new API; 
$api->processApi(); 
?>