Receive data from database and pass to html using twig
This commit is contained in:
parent
aa60edbbf0
commit
e1d70ed8f4
@ -4,8 +4,8 @@ namespace App;
|
||||
class Config
|
||||
{
|
||||
const
|
||||
DB_HOST = '127.0.0.1',
|
||||
DB_DB = 'cfp_test',
|
||||
DB_HOST = 'mariadb',
|
||||
DB_DB = 'lepisi',
|
||||
DB_UNAME = 'root',
|
||||
DB_PWD = 'root';
|
||||
}
|
||||
|
@ -8,7 +8,8 @@ class Home
|
||||
public function index()
|
||||
{
|
||||
// echo "This is index of home"; // Nanti di replace sama twig view ke App\Views\Data\pengumuman.html
|
||||
View::render('Data/pengumuman.html');
|
||||
$posts = new Posts();
|
||||
$posts->index();
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -2,36 +2,51 @@
|
||||
namespace App\Controllers;
|
||||
|
||||
use \Core\View;
|
||||
use App\Models\Post;
|
||||
|
||||
class Posts
|
||||
{
|
||||
private $model;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->model = new Post();
|
||||
}
|
||||
|
||||
public function index()
|
||||
{
|
||||
$posts = $this->model->showAll();
|
||||
// echo "This is index of posts."; // Nanti di replace sama twig view ke App\Views\Data\pengumuman.html
|
||||
View::render('Data/pengumuman.html');
|
||||
View::render('Data/pengumuman.html', [
|
||||
'posts' => $posts
|
||||
]);
|
||||
return true;
|
||||
}
|
||||
|
||||
public function entry()
|
||||
{
|
||||
$categories = $this->model->showCategories();
|
||||
// echo "You can entry new data here."; // Nanti di replace sama twig view ke App\Views\Data\entry_pengumuman.html
|
||||
View::render('Data/entry_pengumuman.html');
|
||||
View::render('Data/entry_pengumuman.html', [
|
||||
'categories' => $categories
|
||||
]);
|
||||
return true;
|
||||
}
|
||||
|
||||
public function edit($id = null)
|
||||
{
|
||||
if ($id) {
|
||||
$posts = $this->model->showSingle($id);
|
||||
// echo "You can edit exists data with id $id here"; // Nanti di replace sama twig view ke App\Views\Data\edit_pengumuman.html
|
||||
View::render(
|
||||
'Data/edit_pengumuman.html',
|
||||
[
|
||||
'category' => 4,
|
||||
'content' => 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.',
|
||||
'created_at' => '2017-05-10 10:00',
|
||||
'creator' => '5',
|
||||
'edited_at' => '2017-08-10 10:00',
|
||||
'editor' => '8'
|
||||
'category' => $posts['category'],
|
||||
'content' => $posts['content'],
|
||||
'created_at' => $posts['created_at'],
|
||||
'creator' => $posts['creator'],
|
||||
'edited_at' => $posts['edited_at'],
|
||||
'editor' => $posts['editor']
|
||||
]
|
||||
);
|
||||
return true;
|
||||
|
@ -41,10 +41,8 @@ class Post extends \Core\Model
|
||||
|
||||
if ($stmt = $db->query($sql)) {
|
||||
$result = $stmt->fetchAll(\PDO::FETCH_ASSOC);
|
||||
// For tests
|
||||
return true;
|
||||
return $result;
|
||||
}
|
||||
return false;
|
||||
} catch (PDOException $e) {
|
||||
echo $e->getMessage();
|
||||
}
|
||||
@ -62,11 +60,29 @@ class Post extends \Core\Model
|
||||
if ($query->execute([$id])) {
|
||||
if ($query->rowCount() === 1) {
|
||||
$result = $query->fetchAll(\PDO::FETCH_ASSOC);
|
||||
// For tests
|
||||
return true;
|
||||
return $result;
|
||||
}
|
||||
}
|
||||
} catch (PDOException $e) {
|
||||
echo $e->getMessage();
|
||||
}
|
||||
}
|
||||
|
||||
public function showCategories()
|
||||
{
|
||||
try {
|
||||
$db = static::connectDB();
|
||||
|
||||
$sql = "SELECT * FROM kategori";
|
||||
|
||||
$query = $db->prepare($sql);
|
||||
|
||||
if ($query->execute()) {
|
||||
if ($query->rowCount() > 1) {
|
||||
$results = $query->fetchAll(\PDO::FETCH_ASSOC);
|
||||
return $results;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
} catch (PDOException $e) {
|
||||
echo $e->getMessage();
|
||||
}
|
||||
|
@ -8,10 +8,9 @@
|
||||
|
||||
<label for="kategori">Kategori</label>
|
||||
<select name="kategori">
|
||||
<option value="kategori_1">Kategori 1</option>
|
||||
<option value="kategori_2">Kategori 2</option>
|
||||
<option value="kategori_3">Kategori 3</option>
|
||||
<option value="kategori_4">Kategori 4</option>
|
||||
{% for cat in categories %}
|
||||
<option value="{{ cat.id }}">{{ cat.category }}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
|
||||
<br>
|
||||
|
@ -5,17 +5,11 @@
|
||||
{% block body %}
|
||||
<h2>List Pengumuman</h2>
|
||||
|
||||
<h3>Pengumuman 1</h3>
|
||||
<code><a href="./posts/edit/1">Edit</a></code>
|
||||
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</p>
|
||||
|
||||
<h3>Pengumuman 1</h3>
|
||||
<code><a href="./posts/edit/2">Edit</a></code>
|
||||
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</p>
|
||||
|
||||
<h3>Pengumuman 1</h3>
|
||||
<code><a href="./posts/edit/3">Edit</a></code>
|
||||
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</p>
|
||||
{% for post in posts %}
|
||||
<h3>Pengumuman {{ post.id }}</h3>
|
||||
<a href="/posts/edit/{{ post.id }}">Edit</a>
|
||||
<p>{{ post.content }}</p>
|
||||
{% endfor %}
|
||||
|
||||
<a href="./posts/entry">+ Tambah Pengumuman</a>
|
||||
{% endblock %}
|
||||
|
Loading…
Reference in New Issue
Block a user