Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimanakah JavaScript boleh memanggil fungsi PHP tanpa menyegarkan halaman?

Bagaimanakah JavaScript boleh memanggil fungsi PHP tanpa menyegarkan halaman?

Barbara Streisand
Barbara Streisandasal
2024-11-19 01:30:02793semak imbas

How can JavaScript call PHP functions without refreshing the page?

Memanggil Fungsi PHP daripada JavaScript: Panduan Mendalam

Artikel ini meneroka topik memanggil fungsi PHP daripada JavaScript, tugas yang sering ditemui semasa menyepadukan aplikasi web.

Penghadan JavaScript

JavaScript, tidak seperti PHP, ialah bahasa skrip sebelah klien yang beroperasi dalam penyemak imbas web. Ia tidak boleh mengakses fungsi PHP sebelah pelayan secara langsung.

Penyelesaian: Permintaan AJAX

Untuk merapatkan jurang ini, pembangun boleh memanfaatkan permintaan AJAX (JavaScript dan XML Asynchronous). AJAX membenarkan JavaScript membuat permintaan HTTP ke pelayan dan menerima respons secara tidak segerak, tanpa memuatkan semula halaman.

Melaksanakan Permintaan AJAX

Di bawah ialah contoh permintaan AJAX untuk memanggil a Fungsi PHP bernama "tambah" menggunakan 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);
                  }
            }
});

Skrip PHP Bahagian Pelayan

Skrip "your_functions_address.php" mengendalikan permintaan AJAX dan melaksanakan " add" function:

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);

Pendekatan ini membolehkan JavaScript memanggil fungsi PHP secara dinamik dan bertukar-tukar data antara skrip bahagian klien dan bahagian pelayan.

Atas ialah kandungan terperinci Bagaimanakah JavaScript boleh memanggil fungsi PHP tanpa menyegarkan halaman?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn