php как расширить класс для соединения с БД SQLite

php как расширить класс для соединения с БД SQLite

05.10.2015 01:25:18 Просмотров 51 Источник

я хотел бы сделать простой веб-сервис с php-sqlite. я нашел хороший пример начальной точки, но мне нужна помощь, чтобы изменить соединение с mysql на sqlite. Им расти с PHP. Итак, как я могу изменить код, опубликованный ниже, чтобы отразить базу данных sqlite?

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);
}  
У вопроса есть решение - Посмотреть?

https://stackoverflow.com/questions/32946311/php-how-to-extend-a-class-for-connection-with-sqlite-db#comment53717641_32946311
Попробуйте найти версию SQLite функции mysql? Так что это не бесплатный сайт "конвертировать мой код".
https://stackoverflow.com/questions/32946311/php-how-to-extend-a-class-for-connection-with-sqlite-db#comment53725439_32946311
SQLite-это встроенная база данных, поэтому она не использует ни сервер, ни пользователей/пароли. Таким образом, вы можете удалить 100% кода, показанного.

Ответы - php как расширить класс для соединения с БД SQLite / php how to extend a class for connection with SQLite db

Является ответом!
sundsx

05.10.2015 07:23:52

в случае необходимости это как сделать SQLite соединение!

<?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();
?>
Закрыть X