O'zgaruvchini Qanday O'tkazish Kerak

Mundarija:

O'zgaruvchini Qanday O'tkazish Kerak
O'zgaruvchini Qanday O'tkazish Kerak

Video: O'zgaruvchini Qanday O'tkazish Kerak

Video: O'zgaruvchini Qanday O'tkazish Kerak
Video: Islomiy to`ylar qanday bo`ladi | Исломий туйлар 2024, Dekabr
Anonim

Tashrif buyuruvchi va veb-sayt (aniqrog'i veb-serverga ega brauzer) o'rtasidagi interaktiv aloqani tashkil qilish uchun dasturchi ular o'rtasida ma'lumotlar almashinuvi stsenariylarini taqdim etishi kerak. Mijoz JavaScript skriptidan server PHP skriptiga va aksincha o'zgaruvchilarni uzatishni tashkil qilishning bir necha oddiy variantlarini ko'rib chiqamiz.

PHP-dan JavaScript-ga ma'lumotlarni uzatish va aksincha
PHP-dan JavaScript-ga ma'lumotlarni uzatish va aksincha

Bu zarur

PHP, JavaScript va HTML tillari bo'yicha asosiy bilimlar

Ko'rsatmalar

1-qadam

Sahifani shakllantirish bosqichida o'zgaruvchini php-skriptdan JavaScript-ga almashtirish bilan birga uning qiymati bilan o'tkazish qiyin emas. PHP skriptining o'zi so'ralgan sahifaning HTML kodini, shu jumladan tarkibidagi skriptlarni yaratadi. Bu shuni anglatadiki, u JavaScript kodiga har qanday o'zgaruvchini o'z qiymatlari bilan birga yozishi mumkin. Masalan, ushbu php-skript mijoz skriptiga "serverTime" nomli o'zgaruvchini joriy server vaqtini o'z ichiga olgan HOUR: MINUTE formatida uzatadi:

<? php

$ JSvarName = 'serverTime';

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

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

chop etish ''. $ JScode.'alert ("Va hozirda serverda" + '. $ JSvarName.'); '

?>

O'zgaruvchini va uning qiymatini PHP-dan Javascript-ga o'tkazish
O'zgaruvchini va uning qiymatini PHP-dan Javascript-ga o'tkazish

2-qadam

O'zgaruvchilarning nomlari va qiymatlarini teskari yo'nalishda (mijoz brauzeridagi JS skriptidan veb-serverdagi PHP skriptigacha) o'tkazishning eng oddiy usuli sahifaning HTML kodida quyidagicha ko'rinishi mumkin:

var now = new date ();

var varName = 'clientTime';

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

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

Ushbu skript test2.php skriptiga "clientTime" o'zgaruvchisining nomini va uning qiymatini kompyuterning joriy vaqtini o'z ichiga olgan HOUR: MINUTE formatida yuboradi. Ma'lumotlarni uzatishning ushbu usuli "sinxron" deb nomlanadi - bu darhol sahifani qayta yuklashga olib keladi. Aniqrog'i, joriy sahifa o'rniga test2.php skriptining natijasi brauzerga yuklanadi. Ushbu PHP skriptining kodi quyidagicha ko'rinishi mumkin:

<? php

agar ($ _ GET) echo 'Qabul qilingan o'zgaruvchi'.key ($ _ GET). '='. $ _ GET [key ($ _ GET)];

?>

Siz o'zgaruvchini serverdan brauzerga uzatish va bitta PHP faylga qaytarish uchun kodning ko'rib chiqilgan uch qismini ham birlashtira olasiz:

<? php

agar ($ _ GET) echo 'Qabul qilingan o'zgaruvchi'.key ($ _ GET). '='. $ _ GET [key ($ _ GET)];

$ JSvarName = 'serverTime';

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

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

chop etish ''. $ JScode.'alert ("Va hozirda serverda" + '. $ JSvarName.'); '

?>

funktsiyasi sendData () {

var now = new date ();

var varName = 'clientTime';

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

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

return false;

}

Ma'lumotlarni serverga yuborish Ushbu birlashtirilgan (PHP + JavaScript) skriptda php kodi "serverTime" nomli o'zgaruvchini joriy server vaqtini o'z ichiga olgan "o'tkazib yuborish" orqali JavaScript kodini yaratadi. Sahifa brauzerga yuklanganda, JavaScript skriptida shu vaqt bilan xabar paydo bo'ladi. So'ngra foydalanuvchi "Ma'lumotlarni serverga yuborish" havolasini bosganda sendData () funktsiyasini ishga tushiradi, bu serverga GET so'rovini yuboradi, o'zgaruvchi nomi ("clientTime") va uning qiymati (mijoz vaqti) php-ga uzatiladi. skript. PHP-skript, o'zgaruvchining nomi va qiymatini $ _GET superglobal qatoridan o'qib, uni chop etadi va butun tavsiflangan skriptni qayta ishga tushiradi.

PHP va JavaScript o'rtasida o'zgaruvchilar va ularning qiymatlari almashinuvi
PHP va JavaScript o'rtasida o'zgaruvchilar va ularning qiymatlari almashinuvi

3-qadam

Yuqorida tavsiflangan barcha ma'lumotlar "sinxron" ma'lumotlarni uzatish ssenariysini amalga oshiradi. Mijoz va server skriptlari o'rtasida ma'lumotlar almashinuvining "asinxron" usulini amalga oshirish o'z nomiga ega AJAX (Asynchronous Javascript va XML). Ushbu mavzu alohida maqolaga loyiqdir.

Tavsiya: