كيفاش نصاوب blog بل php الجزء الثالث
فهاد الجزء الثالث من هاد المشروع غادي نكملو الملفات الخاصة بالأدمن وغادي نقادو الصفحات الرئيسية لي غادي تكون مرئية للمستخدم ولي غادي نعرضوا فيها ل posts ديالنا .
نظرة سريعة بالفيديو
- الملف delete_category.php
باش نكملو الملفات الخاصة بالأدمن غادي نزيدو جوج ملفات فالمجلد admin واحد غادي يمكن من الحذف ديال فئة ختارها الادمن غادي نسميه delete_category.php الكود ديالو :
//delete_category.php code
<?php include('includes/header.php');?>
<?php
$db = new Database();
//suppression
if(isset($_GET['id'])){
$id = (int)$_GET['id'];
}
$query = "DELETE FROM categories WHERE id = $id";
$result = $db->delete($query);
الملف delete_post.php
الملف الثاني غادي يمكن من حذف post اختارو الأدمن غادي نسميه delete_post.php الكود ديالو هو :
//delete_post.php code
<?php include('includes/header.php');?>
<?php
$db = new Database();
//suppression
if(isset($_GET['id'])){
$id = (int)$_GET['id'];
}
$query = "DELETE FROM posts WHERE id = $id";
$result = $db->delete($query);
- الملف index.php
من بعد غادي ندوزو للصفحات لي غادي تكون فل frontend لي هي لي كايشوف المستخدم أولا غادي نبداو بالصفحة الرئيسية غادي نزيد ملف جديد ونسميه index.php فالمجلد الرئيسي لي هو php-blog غادي يكون فيه العرض ديال لposts لي كاينين فقاعدة البيانات الكود النهائي ديالو هو:
<?php
include('includes/header.php');
$db = new Database();
//select posts requête
$query = "SELECT * FROM posts";
$posts = $db->select($query);
//select catégories requête
$query = "SELECT * FROM categories";
$categories = $db->select($query);
?>
<body>
<?php include('includes/menu.php');?>
<div class="container">
<div class="row">
<div class="col-md-8">
<?php if($posts):?>
<div class="panel panel-default">
<?php foreach($posts as $post) :?>
<h1 class="padded text-default"><?php echo $post['title'];?></h1>
<small class="text-info padded"><?php echo $post['date'];?> par <?php echo $post['author'];?></small>
<p class="lead padded">
<?php echo shortenText($post['body'])?><a href="post.php?id=<?php echo urlencode($post['id']);?>" class="btn btn-link">Plus..</a>
</p>
<hr>
<?php endforeach;?>
</div>
<?php else :?>
<p class="alert alert-info">Aucun post trouvé.</p>
<?php endif;?>
</div>
<div class="col-md-3 col-md-offset-1">
<div class="panel panel-default">
<h3 class="text-primary text-center">Catégories</h3>
<?php if($categories):?>
<?php foreach($categories as $categorie) :?>
<span><a href="posts.php?category=<?php echo $categorie['id'];?>" class="btn btn-link"><?php echo $categorie['name'];?></a></span>
<?php endforeach;?>
<?php endif;?>
</div>
</div>
</div>
</body>
<?php include('includes/footer.php');?>
- الملف post.php
فالمجلد الرئيسي غادي نزيدو ملف جديد نسميوه post.php هو لي غادي يمكنا من عرض post واحد اختارو المستخدم الكود النهائي ديالو هو :
<?php
include('includes/header.php');
$db = new Database();
if(isset($_GET['id'])){
$id = $_GET['id'];
}
//select posts requête
$query = "SELECT * FROM posts WHERE id = $id";
$post = $db->select($query)->fetch_assoc();
//select catégories requête
$query = "SELECT * FROM categories";
$categories = $db->select($query);
?>
<body>
<?php include('includes/menu.php');?>
<div class="container">
<div class="row">
<div class="col-md-8">
<div class="panel panel-default">
<h1 class="padded text-default"><?php echo $post['title'];?></h1>
<small class="text-info padded"><?php echo $post['date'];?> par <?php echo $post['author'];?></small>
<p class="lead padded">
<?php echo $post['body'];?>
</p>
<hr>
</div>
</div>
<div class="col-md-3 col-md-offset-1">
<div class="panel panel-default">
<h3 class="text-primary text-center">Catégories</h3>
<?php foreach($categories as $categorie) :?>
<span><a href="posts.php?category=<?php echo $categorie['id'];?>" class="btn btn-link"><?php echo $categorie['name'];?></a></span>
<?php endforeach;?>
</div>
</div>
</div>
</body>
<?php include('includes/footer.php');?>
- الملف posts.php
فالمجلد الرئيسي غادي نزيدو ملف جديد نسميوه posts.php هو لي غادي يمكنا من عرض posts لي كاينين فقاعدة البيانات الكود النهائي ديالو هو :
<?php
include('includes/header.php');
$db = new Database();
if(isset($_GET['category'])){
//select posts requête avec categorie
$categorie = $_GET['category'];
$query = "SELECT * FROM posts WHERE category = $categorie";
$posts = $db->select($query);
}else{
//select posts requête
$query = "SELECT * FROM posts";
$posts = $db->select($query);
}
//select catégories requête
$query = "SELECT * FROM categories";
$categories = $db->select($query);
?>
<body>
<?php include('includes/menu.php');?>
<div class="container">
<div class="row">
<div class="col-md-8">
<?php if($posts):?>
<div class="panel panel-default">
<?php foreach($posts as $post) :?>
<h1 class="padded text-default"><?php echo $post['title'];?></h1>
<small class="text-info padded"><?php echo $post['date'];?> par <?php echo $post['author'];?></small>
<p class="lead padded">
<?php echo shortenText($post['body'])?><a href="post.php?id=<?php echo urlencode($post['id']);?>" class="btn btn-link">Plus..</a>
</p>
<hr>
<?php endforeach;?>
</div>
<?php else :?>
<p class="alert alert-info">Aucun post trouvé.</p>
<?php endif;?>
</div>
<div class="col-md-3 col-md-offset-1">
<div class="panel panel-default">
<h3 class="text-primary text-center">Catégories</h3>
<?php if($categories):?>
<?php foreach($categories as $categorie) :?>
<span><a href="posts.php?category=<?php echo $categorie['id'];?>" class="btn btn-link"><?php echo $categorie['name'];?></a></span>
<?php endforeach;?>
<?php endif;?>
</div>
</div>
</div>
</body>
<?php include('includes/footer.php');?>