Maison >interface Web >js tutoriel >Comment JavaScript peut-il appeler des fonctions PHP sans actualiser la page ?

Comment JavaScript peut-il appeler des fonctions PHP sans actualiser la page ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-19 01:30:02810parcourir

How can JavaScript call PHP functions without refreshing the page?

Appel de fonctions PHP à partir de JavaScript : un guide détaillé

Cet article explore le sujet de l'appel de fonctions PHP à partir de JavaScript, une tâche souvent rencontrés lors de l'intégration d'applications web.

JavaScript Limitations

JavaScript, contrairement à PHP, est un langage de script côté client qui fonctionne dans les navigateurs Web. Il ne peut pas accéder directement aux fonctions PHP côté serveur.

Solution : Requêtes AJAX

Pour combler cette lacune, les développeurs peuvent exploiter les requêtes AJAX (JavaScript asynchrone et XML). AJAX permet à JavaScript d'envoyer des requêtes HTTP à un serveur et de recevoir des réponses de manière asynchrone, sans recharger la page.

Implémentation des requêtes AJAX

Vous trouverez ci-dessous un exemple de requête AJAX pour appeler un Fonction PHP nommée "ajouter" en utilisant jQuery :

$.ajax({
    type: "POST",
    url: 'your_functions_address.php',
    dataType: 'json',
    data: {functionname: 'add', arguments: [1, 2]},

    success: function (obj, textstatus) {
                  if( !('error' in obj) ) {
                      yourVariable = obj.result;
                  }
                  else {
                      console.log(obj.error);
                  }
            }
});

Script PHP côté serveur

Le script "your_functions_address.php" gère la requête AJAX et exécute la fonction "ajouter" :

header('Content-Type: application/json');

$aResult = array();

if( !isset($_POST['functionname']) ) { $aResult['error'] = 'No function name!'; }

if( !isset($_POST['arguments']) ) { $aResult['error'] = 'No function arguments!'; }

if( !isset($aResult['error']) ) {

    switch($_POST['functionname']) {
        case 'add':
               if( !is_array($_POST['arguments']) || (count($_POST['arguments']) < 2) ) {
                   $aResult['error'] = 'Error in arguments!';
               }
               else {
                   $aResult['result'] = add(floatval($_POST['arguments'][0]), floatval($_POST['arguments'][1]));
               }
               break;

        default:
               $aResult['error'] = 'Not found function '.$_POST['functionname'].'!';
               break;
    }

}

echo json_encode($aResult);

Cette approche permet à JavaScript d'appeler dynamiquement des fonctions PHP et d'échanger des données entre le côté client et le côté serveur. scripts.

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!

Déclaration:
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