我是PHP MVC的新手,我有一个关于javascript如何与php mvc一起工作的问题。
如果我有一个带有按钮的页面,当用户单击按钮时它将发送到下一页并更新数据库中的数据
$(document).ready(function(){
$("#btn").click(function(){
$.load(){... }
or $.post(){.....}//post data to another page
});
});
//next page
if(isset($_POST[])){
//update data
}
我的问题是
我是否应该将此数据发送到控制器,而不是传递给模型中并在视图中输出(如果我们需要响应某些内容)
Button --javascript--> controller -> model(update data) --send data back--> view
或
我可以将数据发送到页面并在没有 mvc 的情况下更新
抱歉,我还不能评论您的问题
你的第一种方法是正确的。建议您更新模型中的数据。同时,所有 SQL 语句或 ORM 句柄都应该在其上。
在您的情况下,您有两个选项可以在视图中显示数据:在 php 中返回一个 JSON,使用 javascript 处理它,并在更新数据后直接加载视图。这取决于所有项目的构建方式。
我可以写一些示例,但你需要给一些代码的平静。
// In your controller
if(isset($_POST)){
$obj = new MyObject();
$obj->name = $_POST['name'];
$obj->date = date("Y-m-d");
$obj->validatePost();
$obj->update();
$result = $obj->getData();
return $result;
}
// Your model
class MyObject {
public $name;
public $date;
public function validatePost(){
if($this->name == null){
// print error
}
}
public function update(){
// database cheets
}
public function getData(){
return $json;
}
}