Maison > interface Web > js tutoriel > Explication détaillée des étapes d'appel de la fonction de contrôle ajax + php

Explication détaillée des étapes d'appel de la fonction de contrôle ajax + php

php中世界最好的语言
Libérer: 2018-04-25 15:54:51
original
2056 Les gens l'ont consulté

Cette fois, je vais vous apporter une explication détaillée des étapes pour appeler la fonction de contrôle ajax+php. Quelles sont les précautions pour appeler la fonction de contrôle ajax+php. jetons un coup d'oeil.

Il est divisé en 3 parties pour compléter la logique d'appel ajax de php. Voici la structure générale

La première partie : requête ajax : principalement le paramètre d'action, LoginController est le nom de la classe. de php, login C'est le nom de la fonction dans la classe LoginController

$('#submit').on('click', function (e) {
    e.stopPropagation();
    $.ajax({
      url: "../../controllers/Controller.php",
      data: {
        action: "LoginController/login",
        username: username,
        password: password
      },
      dataType: "text",
      type: 'POST',
      timeout: 10000,
      error: function () {
        alert("服务器超时");
      },
      success: function (data) {
          alert(data);
      }
    });
  });
Copier après la connexion

La deuxième partie : Controller.php, ce fichier est le contrôleur qui appelle d'autres classes fonctionnelles spécifiques, jouant un rôle de hub, principalement Il est obtenu par réflexion

<?php
if (!empty($_REQUEST[&#39;action&#39;])) {
  try {
    $action = explode(&#39;/&#39;, $_REQUEST[&#39;action&#39;]);
    $class_name = $action[0];
    $method_name = $action[1];
    require $class_name . &#39;.php&#39;;
    $class = new ReflectionClass($class_name);
    if (class_exists($class_name)) {
      if ($class->hasMethod($method_name)) {
        $func = $class->getmethod($method_name);
        $instance = $class->newInstance();
        $func->invokeArgs($instance, array($_REQUEST));
        $result = $instance->getResult();
        echo $result;
      }
    }
  } catch (Exception $exc) {
    echo $exc->getTraceAsString();
  }
}
?>
Copier après la connexion

Partie 3 : LoginController.php, ce fichier est une classe fonctionnelle spécifique

<?php
class LoginController {
  
  private $result;
  function LoginController() {
    //初始化数据库连接等参数
  }
  function login($args) {
    //具体的登录逻辑
  }
  function getResult() {
    return $this->result;
  }
}
?>
Copier après la connexion

Je crois que vous maîtrisez la méthode après avoir lu le cas dans cet article, et plus encore Comme c'est excitant, veuillez prêter attention aux autres articles connexes sur le site Web chinois de php !

Lecture recommandée :

JS implémente la définition d'arrière-plan d'appel ajax (avec code)

Explication détaillée des étapes à mettre en œuvre disposition du flux en cascade avec ajax (Avec code)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal