Я изучаю программирование онлайн уже 3 года.Я разработал большой проект в это время, но у меня есть проблема.Я не знал о паттерне MVC и как сказать «Программирование с нуля».Прямо сейчас мой код - большой беспорядок, который никто не может понять, но только я ..
Я узнал об этом шаблоне MVC, и это отличная вещь, но сейчас я не могу понять, где и каксделать пару вещей.Как я понимаю, что ни один php-код не идет на просмотр?И нет html / css в модели.
Например, в какой структуре я должен реализовать свой код javascript и ajax?(Это вид?) Где и как управлять отображением, если?Как:
if($user_id == $me){
//display post with delete option
}else{
//display post
}
У меня есть функции с гончими строк и если.Например, одна из моих функций.Я хочу понять, как воспроизвести его в шаблоне MVC.
public function selectUserPosts(){
try{
require_once('Class.Users.php');
$user = new USER();
$id = $_GET['id'];
$stmt = $this->conn->prepare("SELECT * FROM fun_posts WHERE addedby=('$id') ORDER BY date DESC");
$stmt->execute();
$result = $stmt->fetchAll();
foreach($result as $post){
?>
<div class="col-sm-4">
<div class="animated flipInY" id="panel_<?php echo $post['id'];?>">
<div class="thumbnail" style="height:300px;">
<a href="/Web/Pages/Fun/Fun_Post.php?action=select&image_id=<?php echo $post['id'];?>" target="_blank">
<img class="img" style="width: 100%; height:150px;" src="<?php echo $post['image']; ?>" alt="" />
</a>
<i class="fa fa-clock-o" aria-hidden="true"></i><?php echo $user->time_elapsed($post['date']); ?>
<div id="upvote_<?php echo $post['id'];?>" class="panel">
<i class="fa fa-arrow-circle-up" style="font-size:22px; margin-top:10px;"></i> <b id="upvote_panel_<?php echo $post['id'];?>"><?php echo $post['upvotes']; ?></b>
<button style="float:right; margin-top:5px; width:90px;" class="btn btn-sm btn-success" type="submit"><i class="fa fa-arrow-circle-up"></i> Upvote</button>
</div>
<div id="downvote_<?php echo $post['id'];?>" class="panel">
<i class="fa fa-arrow-circle-down" style="font-size:22px; margin-top:-5px;"></i> <b id="downvote_panel_<?php echo $post['id'];?>"><?php echo $post['downvotes']; ?></b>
<button style="float:right; margin-top:-10px; width:90px;" class="btn btn-sm btn-danger" type="submit"><i class="fa fa-arrow-circle-down"></i> Downvote</button>
</div>
<div id="comment_<?php echo $post['id'];?>" class="panel">
<i class="fa fa-comment" style="font-size:22px; margin-top:-10px;"></i> <b id="comment_panel_<?php echo $post['id'];?>"><?php echo $post['comments']; ?></b>
<a href="/Web/Pages/Fun/Fun_Post.php?action=select&image_id=<?php echo $post['id'];?>" target="_blank">
<button style="float:right; margin-top:-13px; width:90px;" class="btn btn-sm btn-primary" type="submit"><i class="fa fa-comment"></i> Comment</button>
</a>
</div>
</div>
</div>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script>
$(function(){
$("#upvote_<?php echo $post['id'];?>").click(function(){
$.ajax(
{ url: "Home.php?upvote-btn=true?action=select&image_id=<?php echo $post['id'];?>",
type: "get",
success: function(result){
$('#upvote_panel_<?php echo $post['id'];?>').load(document.URL + ' #upvote_panel_<?php echo $post['id'];?>');
$('#downvote_panel_<?php echo $post['id'];?>').load(document.URL + ' #downvote_panel_<?php echo $post['id'];?>');
$('#comment_panel_<?php echo $post['id'];?>').load(document.URL + ' #comment_panel_<?php echo $post['id'];?>');
document.getElementById('result-box').innerHTML += result;
}
});
});
$("#downvote_<?php echo $post['id'];?>").click(function(){
$.ajax(
{ url: "Home.php?downvote-btn=true?action=select&image_id=<?php echo $post['id'];?>",
type: "get",
success: function(result){
$('#upvote_panel_<?php echo $post['id'];?>').load(document.URL + ' #upvote_panel_<?php echo $post['id'];?>');
$('#downvote_panel_<?php echo $post['id'];?>').load(document.URL + ' #downvote_panel_<?php echo $post['id'];?>');
$('#comment_panel_<?php echo $post['id'];?>').load(document.URL + ' #comment_panel_<?php echo $post['id'];?>');
document.getElementById('result-box').innerHTML += result;
}
});
});
});
</script>
<?php
}
}
catch(PDOException $e)
{
echo $e->getMessage();
}
}