浏览代码

move DB to seperate User & Blog classes

namespaces
父节点
当前提交
ce0e99984d
共有 5 个文件被更改,包括 55 次插入39 次删除
  1. 4
    4
      public/index.php
  2. 0
    35
      src/DB.php
  3. 18
    0
      src/DB/Blog.php
  4. 13
    0
      src/DB/DB.php
  5. 20
    0
      src/DB/User.php

+ 4
- 4
public/index.php 查看文件

@@ -6,13 +6,13 @@ session_start();
use Psr\Http\Message\ResponseInterface as Response;
use Psr\Http\Message\ServerRequestInterface as Request;
use Slim\Factory\AppFactory;
use Blog\DB;
use Blog\DB\User;
use Blog\DB\Blog;

require __DIR__ . '/../vendor/autoload.php';

$app = AppFactory::create();

$db = new DB();
ini_set('display_errors', 'Off');

function addNavbar($response)
@@ -104,7 +104,7 @@ $app->map(['GET', 'POST'], '/blog/create', function (Request $request, Response
addFooter($response);
} else {
$data = $request->getParsedBody();
global $db;
$db = new Blog();

$res = $db->createBlog($data);
if($res) {
@@ -158,7 +158,7 @@ $app->map(['GET', 'POST'], '/login', function (Request $request, Response $respo
} else {
$postdata = $request->getParsedBody();
global $db;
$db = new User();
$logged_in = $db->checkUserPass($postdata['username'], $postdata['password']);
if ($logged_in) {
$_SESSION["username"] = $postdata['username'];

+ 0
- 35
src/DB.php 查看文件

@@ -1,35 +0,0 @@
<?php

namespace Blog;

use SQLite3;

class DB extends SQLite3 {
function __construct() {
$this->open('../private/test.db');
}

public function checkUserPass($user, $pass) {
$sql = "SELECT COUNT(*) as count FROM users WHERE username = '" . $user . "' AND password = '" . $pass . "'";
$ret = $this->query($sql);
$rows = $ret->fetchArray(SQLITE3_ASSOC);
$rowcount = $rows['count'];
if ($rowcount == 1) {
return true;
} else {
return false;
}
}

public function createBlog($data) {
$this->enableExceptions(false);
$stmt = $this->prepare("INSERT INTO blogs (slug, title, content) VALUES (:slug, :title, :content)");
$stmt->bindValue(':slug', $data['slug'], SQLITE3_TEXT);
$stmt->bindValue(':title', $data['title'], SQLITE3_TEXT);
$stmt->bindValue(':content', $data['content'], SQLITE3_TEXT);
$res = $stmt->execute();
return $res;
}
}

?>

+ 18
- 0
src/DB/Blog.php 查看文件

@@ -0,0 +1,18 @@
<?php

namespace Blog\DB;

class Blog extends DB {
public function createBlog($data) {
$this->enableExceptions(false);
$stmt = $this->prepare("INSERT INTO blogs (slug, title, content) VALUES (:slug, :title, :content)");
$stmt->bindValue(':slug', $data['slug'], SQLITE3_TEXT);
$stmt->bindValue(':title', $data['title'], SQLITE3_TEXT);
$stmt->bindValue(':content', $data['content'], SQLITE3_TEXT);
$res = $stmt->execute();
return $res;
}
}

?>

+ 13
- 0
src/DB/DB.php 查看文件

@@ -0,0 +1,13 @@
<?php

namespace Blog\DB;

use SQLite3;

class DB extends SQLite3 {
function __construct() {
$this->open('../private/test.db');
}
}

?>

+ 20
- 0
src/DB/User.php 查看文件

@@ -0,0 +1,20 @@
<?php

namespace Blog\DB;

class User extends DB {
public function checkUserPass($user, $pass) {
$sql = "SELECT COUNT(*) as count FROM users WHERE username = '" . $user . "' AND password = '" . $pass . "'";
$ret = $this->query($sql);
$rows = $ret->fetchArray(SQLITE3_ASSOC);
$rowcount = $rows['count'];
if ($rowcount == 1) {
return true;
} else {
return false;
}
}
}

?>

正在加载...
取消
保存