כיצד להעביר משתנה

תוכן עניינים:

כיצד להעביר משתנה
כיצד להעביר משתנה

וִידֵאוֹ: כיצד להעביר משתנה

וִידֵאוֹ: כיצד להעביר משתנה
וִידֵאוֹ: SPSS for beginners 4: Compute ספסס למתחילים 4: יצירת משתנה חדש מתוך משתנים קיימים 2024, מאי
Anonim

כדי לארגן תקשורת אינטראקטיבית בין מבקר לאתר (או ליתר דיוק, דפדפן עם שרת אינטרנט), על המתכנת לספק תרחישים להחלפת נתונים ביניהם. בואו ניקח בחשבון מספר אפשרויות פשוטות לארגון העברת המשתנים מתסריט JavaScrip של הלקוח לתסריט PHP של השרת ולהיפך.

העברת נתונים מ- PHP ל- JavaScript ולהיפך
העברת נתונים מ- PHP ל- JavaScript ולהיפך

זה הכרחי

ידע בסיסי בשפות PHP, JavaScript ו- HTML

הוראות

שלב 1

בשלב היווצרות העמודים, לא קשה להעביר משתנה יחד עם ערכו מסקריפט php לסקריפט JavaScript. סקריפט ה- PHP עצמו מייצר את קוד ה- HTML של הדף המבוקש, כולל הסקריפטים שהוא מכיל. המשמעות היא שהוא יכול לכתוב כל משתנה לקוד JavaScript שיש להעביר יחד עם הערכים שלהם. לדוגמה, סקריפט php זה יעביר לסקריפט הלקוח משתנה בשם "serverTime" המכיל את זמן השרת הנוכחי בפורמט HOUR: MINUTE:

<? php

$ JSvarName = 'serverTime';

$ JSvarValue = תאריך ('H: i');

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

הדפס ''. $ JScode.'alert ("ובשרת עכשיו" + '. $ JSvarName.'); '

?>

העברת משתנה וערכו מ- PHP ל- Javascript
העברת משתנה וערכו מ- PHP ל- Javascript

שלב 2

הדרך הפשוטה ביותר להעביר שמות וערכים של משתנים בכיוון ההפוך (מסקריפט JS בדפדפן הלקוח לתסריט PHP בשרת האינטרנט) יכולה להיראות כך בקוד ה- HTML של הדף:

var now = תאריך חדש ();

var varName = 'clientTime';

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

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

סקריפט זה ישלח לסקריפט test2.php את שם המשתנה "clientTime" והערך שלו המכיל את זמן המחשב הנוכחי באותו פורמט HOUR: MINUTE. שיטה זו להעברת נתונים נקראת "סינכרוני" - היא תביא לטעינה מיידית של הדף. ליתר דיוק, במקום הדף הנוכחי, התוצאה של סקריפט test2.php תועלה לדפדפן. הקוד עבור סקריפט PHP זה עשוי להיראות כך:

<? php

אם ($ _ GET) מהדהד 'משתנה שהתקבל'. מקש ($ _ GET). '='. $ _ GET [key ($ _ GET)];

?>

אתה יכול לשלב את כל שלושת החלקים הנחשבים בקוד להעברת משתנים מהשרת לדפדפן ובחזרה לקובץ php אחד כזה:

<? php

אם ($ _ GET) מהדהד 'משתנה שהתקבל'. מקש ($ _ GET). '='. $ _ GET [key ($ _ GET)];

$ JSvarName = 'serverTime';

$ JSvarValue = תאריך ('H: i');

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

הדפס ''. $ JScode.'alert ("ובשרת עכשיו" + '. $ JSvarName.'); '

?>

פונקציה sendData () {

var now = תאריך חדש ();

var varName = 'clientTime';

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

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

להחזיר כוזב;

}

שלח נתונים לשרת בסקריפט משולב זה (PHP + JavaScript), קוד ה- php יפיק קוד JavaScript על ידי "העברת" משתנה בשם "serverTime" עם ערך המכיל את זמן השרת הנוכחי. כאשר העמוד נטען לדפדפן, סקריפט JavaScript יציג הודעה עם הזמן הזה. לאחר מכן המשתמש לוחץ על הקישור "שלח נתונים לשרת" יפעיל את הפונקציה sendData (), שתשלח בקשת GET לשרת ותעביר את שם המשתנה ("clientTime") ואת הערך שלו (זמן לקוח) ל- php תַסרִיט. סקריפט php, לאחר שקרא את השם והערך של משתנה ממערך $ _GET העל הגלובלי, ידפיס אותו ויתחיל את כל התסריט המתואר שוב.

החלפת משתנים וערכיהם בין PHP ל- JavaScript
החלפת משתנים וערכיהם בין PHP ל- JavaScript

שלב 3

כל מה שתואר לעיל מיישם את התרחיש של העברת נתונים "סינכרונית". ליישום השיטה "אסינכרונית" להחלפת נתונים בין סקריפטים של לקוחות לשרתים יש שם משלה AJAX (Javascript Asynchronous ו- XML). נושא זה ראוי למאמר נפרד.

מוּמלָץ: