ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScript はページを更新せずに PHP 関数を呼び出すにはどうすればよいでしょうか?

JavaScript はページを更新せずに PHP 関数を呼び出すにはどうすればよいでしょうか?

Barbara Streisand
リリース: 2024-11-19 01:30:02
オリジナル
839 人が閲覧しました

How can JavaScript call PHP functions without refreshing the page?

JavaScript からの PHP 関数の呼び出し: 詳細ガイド

この記事では、頻繁に行われるタスクである JavaScript からの PHP 関数の呼び出しについて説明します。 Web アプリケーションを統合するときに発生します。

JavaScript制限

JavaScript は、PHP とは異なり、Web ブラウザ内で動作するクライアント側のスクリプト言語です。サーバー側の PHP 関数に直接アクセスすることはできません。

解決策: AJAX リクエスト

このギャップを埋めるために、開発者は AJAX (非同期 JavaScript および XML) リクエストを活用できます。 AJAX を使用すると、JavaScript はページをリロードせずに、サーバーに対して HTTP リクエストを作成し、非同期でレスポンスを受信できます。

AJAX リクエストの実装

以下は、 「add」という名前の PHP 関数を使用して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);
                  }
            }
});
ログイン後にコピー

サーバーサイド PHP スクリプト

「your_functions_address.php」スクリプトは AJAX リクエストを処理し、「add」関数を実行します。

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);
ログイン後にコピー

このアプローチにより、JavaScript が PHP 関数を動的に呼び出し、PHP 関数間でデータを交換できるようになります。クライアント側とサーバー側のスクリプト。

以上がJavaScript はページを更新せずに PHP 関数を呼び出すにはどうすればよいでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート