Javascript 在php MVC上使用ajax请求
我正在用php和javascript制作一个游戏网站。所以我的类和数据是用php编写的,我用json数据类型对它们进行编码。我调用我的视图,它本身调用js文件,由于ajax请求,该文件恢复用json编码的php数据,并用javascript发布它们。我的问题是,我不知道如何将它集成到我的mvc中,也就是说,用一个动作遍历我的索引,而不是直接调用我的视图 我的控制器:Javascript 在php MVC上使用ajax请求,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我正在用php和javascript制作一个游戏网站。所以我的类和数据是用php编写的,我用json数据类型对它们进行编码。我调用我的视图,它本身调用js文件,由于ajax请求,该文件恢复用json编码的php数据,并用javascript发布它们。我的问题是,我不知道如何将它集成到我的mvc中,也就是说,用一个动作遍历我的索引,而不是直接调用我的视图 我的控制器: class Controlleur { public function __construct() { g
class Controlleur
{
public function __construct() {
global $rep,$vues;
try{
$action=$_REQUEST['action'];
switch($action){
case NULL:
$this->homePage();
break;
case "VoirScore":
$this->afficherScore();
break;
default:
$dVueEreur[] = "Erreur d'appel php";
require ($rep.$vues['error']);
break;
}
} catch (PDOException $e)
{
echo $e->getMessage();
$dVueEreur[] = "Erreur inattendue PDO!!! ";
require ($rep.$vues['error']);
}
catch (Exception $e2)
{
$dVueEreur[] = "Erreur inattendue!!! ";
require ($rep.$vues['error']);
}
}
public function homePage(){
global $vues, $rep;
require($rep . $vues['homePage']);
}
我的索引:
session_start();
Autoload::charger();
new Controlleur();
我的Js ajax请求:
var Game = {
cards: [],
selected: [],
score: 0,
$board: $('[data-display="game-board"]'),
$score: $('[data-display="score"]'),
deal: function() {
var self = this;
var dealRequest = $.ajax({
url: 'set.php?action=deal',
type: 'GET',
dataType: 'json',
success: function(data) {
self.cards = data;
self.displayCards.call(self);
self.setCardListeners();
self.setPageListeners();
}
}); },
如果您需要更多的解释或详细信息,您可以直接告诉我。这是调用其他视图的视图主页,set.js是将javascript文件与ajax集成在一起的文件,您可以看到我无需任何操作即可调用她
<div class="menu box">
<a href="#" class="logo">HyperSet</a>
<a href="set.html">Jouer</a>
<a href="index.php?action=VoirScore">Voir Les Scores</a>
<a href="#">Règles</a>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script type="text/javascript" src="vues/js/Settings.js"></script>
这是我的set.html
<div class="wrapper">
<h1>(TEST) Set</h1>
<p>Find sets.</p>
<p>Sets found: <span data-display="score" class="score">0</span></p>
<p>Number of Sets: <span data-display="nbSets" class="nbSets"></span></p>
<div class="game-board" data-display="game-board" style="display: block;" ></div>
</div>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="vues/js/set.js"></script>
(测试)设置
查找集合
找到的集合:0
套数:
仅仅因为您将一个类称为“controller”,并不意味着它是MVC。