Hur Man Skickar En Variabel

Innehållsförteckning:

Hur Man Skickar En Variabel
Hur Man Skickar En Variabel

Video: Hur Man Skickar En Variabel

Video: Hur Man Skickar En Variabel
Video: Hur man skickar saker man säljer på nätet #1 2024, November
Anonim

För att organisera interaktiv kommunikation mellan en besökare och en webbplats (eller snarare en webbläsare med en webbserver) måste programmeraren tillhandahålla scenarier för datautbyte mellan dem. Låt oss överväga flera enkla alternativ för att organisera överföringen av variabler från klienten JavaScrip-skript till serverns PHP-skript och vice versa.

Att skicka data från PHP till JavaScript och vice versa
Att skicka data från PHP till JavaScript och vice versa

Det är nödvändigt

Grundläggande kunskaper i PHP, JavaScript och HTML-språk

Instruktioner

Steg 1

Vid sidan av sidbildning är det inte svårt att överföra en variabel tillsammans med dess värde från ett php-skript till ett JavaScript-skript. Själva PHP-skriptet genererar HTML-koden för den begärda sidan, inklusive de skript den innehåller. Detta innebär att han kan skriva alla variabler i JavaScript-koden som ska skickas tillsammans med deras värden. Till exempel skickar detta php-skript till klientskriptet en variabel med namnet "serverTime" som innehåller den aktuella servertiden i formatet HOUR: MINUTE:

<? php

$ JSvarName = 'serverTime';

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

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

skriva ut ''. $ JScode.'alert ("Och på servern nu" + '. $ JSvarName.'); '

?>

Skicka en variabel och dess värde från PHP till Javascript
Skicka en variabel och dess värde från PHP till Javascript

Steg 2

Det enklaste sättet att skicka namn och värden på variabler i motsatt riktning (från JS-skriptet i klientens webbläsare till PHP-skriptet på webbservern) kan se ut så här i HTML-koden på sidan:

var nu = nytt datum ();

var varName = 'clientTime';

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

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

Detta skript skickar namnet på variabeln "clientTime" till skriptet test2.php och dess värde som innehåller den aktuella datortiden i samma format HOUR: MINUTE. Denna metod för överföring av data kallas "synkron" - det kommer att resultera i en omedelbar omladdning av sidan. Mer exakt, istället för den aktuella sidan laddas resultatet av test2.php-skriptet till webbläsaren. Koden för detta php-skript kan se ut så här:

<? php

if ($ _ GET) echo 'Mottagen variabel'. nyckel ($ _ GET). '='. $ _ GET [key ($ _ GET)];

?>

Du kan kombinera alla tre viktiga delar av koden för att överföra variabler från servern till webbläsaren och tillbaka till en sådan php-fil:

<? php

if ($ _ GET) echo 'Mottagen variabel'. nyckel ($ _ GET). '='. $ _ GET [key ($ _ GET)];

$ JSvarName = 'serverTime';

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

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

skriva ut ''. $ JScode.'alert ("Och på servern nu" + '. $ JSvarName.'); '

?>

funktion sendData () {

var nu = nytt datum ();

var varName = 'clientTime';

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

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

returnera falsk;

}

Skicka data till servern I det här kombinerade (PHP + JavaScript) -skriptet genererar php-koden JavaScript-kod genom att "skicka" en variabel med namnet "serverTime" med ett värde som innehåller den aktuella servertiden. När sidan laddas in i webbläsaren visar JavaScript-skriptet ett meddelande med den här tiden. Sedan klickar användaren på länken "Skicka data till server" för att starta funktionen SendData (), som skickar en GET-begäran till servern och skickar variabelnamnet ("clientTime") och dess värde (klienttid) till php manus. Ett php-skript, som har läst namnet och värdet på en variabel från $ _GET superglobal array, kommer att skriva ut det och starta hela det beskrivna skriptet igen.

Utbyte av variabler och deras värden mellan PHP och JavaScript
Utbyte av variabler och deras värden mellan PHP och JavaScript

Steg 3

Allt som beskrivs ovan implementerar scenariot för "synkron" dataöverföring. Implementeringen av den "asynkrona" metoden för utbyte av data mellan klient- och serverskript har sitt eget namn AJAX (Asynchronous Javascript and XML). Detta ämne förtjänar en separat artikel.

Rekommenderad: