Cara Lulus Pemboleh Ubah

Isi kandungan:

Cara Lulus Pemboleh Ubah
Cara Lulus Pemboleh Ubah

Video: Cara Lulus Pemboleh Ubah

Video: Cara Lulus Pemboleh Ubah
Video: #cikgootube SAINS SPM-Mengenal pasti pemboleh ubah 2024, November
Anonim

Untuk mengatur komunikasi interaktif antara pelawat dan laman web (atau lebih tepatnya, penyemak imbas dengan pelayan web), pengaturcara perlu menyediakan senario pertukaran data antara mereka. Mari pertimbangkan beberapa pilihan mudah untuk mengatur pemindahan pemboleh ubah dari skrip JavaScrip klien ke skrip PHP pelayan dan sebaliknya.

Menyampaikan data dari PHP ke JavaScript dan sebaliknya
Menyampaikan data dari PHP ke JavaScript dan sebaliknya

Ia perlu

Pengetahuan asas PHP, JavaScript dan bahasa HTML

Arahan

Langkah 1

Pada tahap pembentukan halaman, tidak sukar untuk memindahkan pemboleh ubah bersama dengan nilainya dari skrip php ke skrip JavaScript. Skrip PHP itu sendiri menghasilkan kod HTML dari halaman yang diminta, termasuk skrip yang terdapat di dalamnya. Ini bermaksud bahawa dia dapat menulis sebarang pemboleh ubah ke dalam kod JavaScript yang harus dilalui bersama dengan nilainya. Sebagai contoh, skrip php ini akan memberikan skrip klien pemboleh ubah bernama "serverTime" yang mengandungi masa pelayan semasa dalam format JAM: MINIT:

<? php

$ JSvarName = 'serverTime';

$ JSvarValue = tarikh ('H: i');

$ JScode = $ JSvarName. '= "'. $ JSvarValue. '";';

cetak ''. $ JScode.'alert ("Dan di pelayan sekarang" + '. $ JSvarName.'); '

?>

Melewati pemboleh ubah dan nilainya dari PHP ke Javascript
Melewati pemboleh ubah dan nilainya dari PHP ke Javascript

Langkah 2

Cara termudah untuk meneruskan nama dan nilai pemboleh ubah ke arah yang berlawanan (dari skrip JS di penyemak imbas pelanggan ke skrip PHP di pelayan web) boleh kelihatan seperti ini dalam kod HTML halaman:

var now = tarikh baru ();

var varName = 'clientTime';

var varValue = now.getHours () + ":" + now.getMinutes ();

window.location.href = 'https://sa/test2.php?' + varName + '=' varValue;

Skrip ini akan menghantar ke skrip test2.php nama pemboleh ubah "clientTime" dan nilainya yang mengandungi masa komputer semasa dalam format yang sama JAM: MINUTE. Kaedah pemindahan data ini disebut "segerak" - ia akan menghasilkan muat semula halaman serta-merta. Lebih tepat lagi, bukannya halaman semasa, hasil skrip test2.php akan dimuat ke dalam penyemak imbas. Kod untuk skrip php ini mungkin kelihatan seperti ini:

<? php

if ($ _ GET) gema 'Received variabel'.key ($ _ GET). '='. $ _ GET [kunci ($ _ GET)];

?>

Anda boleh menggabungkan ketiga-tiga bahagian kod yang dipertimbangkan untuk meneruskan pemboleh ubah dari pelayan ke penyemak imbas dan kembali ke satu fail php seperti ini:

<? php

if ($ _ GET) gema 'Received variabel'.key ($ _ GET). '='. $ _ GET [kunci ($ _ GET)];

$ JSvarName = 'serverTime';

$ JSvarValue = tarikh ('H: i');

$ JScode = $ JSvarName. '= "'. $ JSvarValue. '";';

cetak ''. $ JScode.'alert ("Dan di pelayan sekarang" + '. $ JSvarName.'); '

?>

fungsi sendData () {

var now = tarikh baru ();

var varName = 'clientTime';

var varValue = now.getHours () + ":" + now.getMinutes ();

window.location.href = "https://sa/test2.php?" + varName + "=" + varValue;

kembali palsu;

}

Kirim data ke pelayan Dalam skrip gabungan (PHP + JavaScript) ini, kod php akan menghasilkan kod JavaScript dengan "meneruskan" pemboleh ubah bernama "serverTime" dengan nilai yang mengandungi waktu pelayan semasa. Ketika halaman dimuat ke dalam penyemak imbas, skrip JavaScript akan memaparkan pesan dengan waktu ini. Kemudian pengguna mengklik pada pautan "Kirim data ke pelayan" akan melancarkan fungsi sendData (), yang akan mengirim permintaan GET ke pelayan, meneruskan nama pemboleh ubah ("clientTime") dan nilainya (waktu klien) ke php skrip. Skrip php, setelah membaca nama dan nilai pemboleh ubah dari array superglobal $ _GET, akan mencetaknya dan memulakan keseluruhan skrip yang dijelaskan lagi.

Pertukaran pemboleh ubah dan nilainya antara PHP dan JavaScript
Pertukaran pemboleh ubah dan nilainya antara PHP dan JavaScript

Langkah 3

Semua yang dijelaskan di atas melaksanakan senario pemindahan data "segerak". Pelaksanaan kaedah "asynchronous" pertukaran data antara skrip pelanggan dan pelayan mempunyai namanya sendiri AJAX (Asynchronous Javascript dan XML). Topik ini memerlukan artikel yang berasingan.

Disyorkan: