Kā Nodot Mainīgo

Satura rādītājs:

Kā Nodot Mainīgo
Kā Nodot Mainīgo

Video: Kā Nodot Mainīgo

Video: Kā Nodot Mainīgo
Video: Сердечная Рана 19 серияна русском языке (Фрагмент №1) Kalp Yarası 19.Bölüm 1.Fragmanı 2024, Maijs
Anonim

Lai organizētu interaktīvu saziņu starp apmeklētāju un vietni (vai drīzāk pārlūkprogrammu ar tīmekļa serveri), programmētājam jāsniedz scenāriji datu apmaiņai starp viņiem. Apsvērsim vairākas vienkāršas iespējas mainīgo pārsūtīšanas organizēšanai no klienta JavaScrip skripta uz servera PHP skriptu un otrādi.

Datu pārsūtīšana no PHP uz JavaScript un otrādi
Datu pārsūtīšana no PHP uz JavaScript un otrādi

Tas ir nepieciešams

Pamata zināšanas par PHP, JavaScript un HTML valodām

Instrukcijas

1. solis

Lapas veidošanas posmā nav grūti pārvietot mainīgo kopā ar tā vērtību no php skripta uz JavaScript skriptu. PHP skripts pats ģenerē pieprasītās lapas HTML kodu, ieskaitot tajā esošos skriptus. Tas nozīmē, ka viņš var ierakstīt visus mainīgos JavaScript kodā, kas jānodod kopā ar to vērtībām. Piemēram, šis php skripts klienta skriptam nodos mainīgo ar nosaukumu "serverTime", kas satur pašreizējo servera laiku formātā HOUR: MINUTE:

<? php

$ JSvarName = 'serverTime';

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

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

print ''. $ JScode.'alert ("Un serverī tagad" + '. $ JSvarName.'); '

?>

Mainīgā un tā vērtības nodošana no PHP Javascript
Mainīgā un tā vērtības nodošana no PHP Javascript

2. solis

Vienkāršākais veids, kā mainīgo nosaukumus un vērtības nodot pretējā virzienā (no klienta pārlūkprogrammas JS skripta uz tīmekļa servera PHP skriptu), lapas HTML kodā var izskatīties šādi:

var tagad = jauns datums ();

var varName = 'klienta laiks';

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

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

Šis skripts nosūtīs skriptam test2.php mainīgā "clientTime" nosaukumu un tā vērtību, kas satur pašreizējo datora laiku tajā pašā formātā HOUR: MINUTE. Šī datu pārsūtīšanas metode tiek saukta par "sinhronu" - tā rezultātā lapa tiks nekavējoties ielādēta. Precīzāk, pašreizējās lapas vietā pārlūkprogrammā tiks ielādēts skripta test2.php rezultāts. Šī php skripta kods varētu izskatīties šādi:

<? php

if ($ _ GET) atbalss 'Saņemtais mainīgais'.atslēga ($ _ GET). '='. $ _ GET [atslēga ($ _ GET)];

?>

Varat apvienot visas trīs koda daļas mainīgo pārsūtīšanai no servera uz pārlūku un atpakaļ vienā php failā šādi:

<? php

if ($ _ GET) atbalss 'Saņemtais mainīgais'.atslēga ($ _ GET). '='. $ _ GET [atslēga ($ _ GET)];

$ JSvarName = 'serverTime';

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

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

print ''. $ JScode.'alert ("Un serverī tagad" + '. $ JSvarName.'); '

?>

funkcija sendData () {

var tagad = jauns datums ();

var varName = 'klienta laiks';

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

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

atgriezties nepatiesa;

}

Datu nosūtīšana serverim Šajā kombinētajā (PHP + JavaScript) skriptā php kods ģenerēs JavaScript kodu, "nododot" mainīgo ar nosaukumu "serverTime" ar vērtību, kas satur pašreizējo servera laiku. Kad lapa ir ielādēta pārlūkprogrammā, JavaScript skriptā tiks parādīts ziņojums ar šo laiku. Pēc tam lietotājs noklikšķina uz saites "Sūtīt datus uz serveri", palaižot funkciju sendData (), kas serverim nosūtīs GET pieprasījumu, mainītāja nosaukumu ("clientTime") un tā vērtību (klienta laiks) nododot php scenārijs. PHP skripts, izlasījis mainīgā nosaukumu un vērtību no $ _GET superglobal masīva, to izdrukās un atkal sāks visu aprakstīto skriptu.

Mainīgo un to vērtību apmaiņa starp PHP un JavaScript
Mainīgo un to vērtību apmaiņa starp PHP un JavaScript

3. solis

Viss iepriekš aprakstītais īsteno "sinhronas" datu pārsūtīšanas scenāriju. "Asinhronās" datu apmaiņas metodes starp klienta un servera skriptiem ieviešanai ir savs nosaukums AJAX (asinhronais Javascript un XML). Šī tēma ir pelnījusi atsevišķu rakstu.

Ieteicams: