| 導購 | 订阅 | 在线投稿
分享
 
 
 

怎样从 Javascript 传递一个变量到 PHP

2008-09-09 07:29:17  編輯來源:互聯網  简体版  手機版  評論  字體: ||
 
  由于 Javascrīpt (通常情况下)是客户端技术,而 PHP (通常情况下)是服务器端技术,而且 HTTP 是一种“无状态”协议,因此两种语言之间不能直接共享变量。

  但是,有可能在二者之间传递变量。一种实现的方法是用 PHP 生成 Javascrīpt 代码,并让浏览器自动刷新,将特定的变量传递回 PHP 脚本。以下例子显示了如何这样做――让 PHP 代码取得显示屏幕的高度和宽度,通常只能在客户端这么做。

  <?php

  if (isset($_GET['width']) AND isset($_GET['height'])) {

   // output the geometry variables

   echo "Screen width is: ". $_GET['width'] ."<br />\n";

   echo "Screen height is: ". $_GET['height'] ."<br />\n";

  } else {

   // pass the geometry variables

   // (preserve the original query string

   // -- post variables will need to handled differently)

   echo "<scrīpt language='javascrīpt'>\n";

   echo " location.href=\"${_SERVER['scrīpt_NAME']}?${_SERVER['QUERY_STRING']}"

   . "&width=\" + screen.width + \"&height=\" + screen.height;\n";

   echo "</scrīpt>\n";

   exit();

  }

  ?>
 
 
 
由于 Javascrīpt (通常情况下)是客户端技术,而 PHP (通常情况下)是服务器端技术,而且 HTTP 是一种“无状态”协议,因此两种语言之间不能直接共享变量。 但是,有可能在二者之间传递变量。一种实现的方法是用 PHP 生成 Javascrīpt 代码,并让浏览器自动刷新,将特定的变量传递回 PHP 脚本。以下例子显示了如何这样做――让 PHP 代码取得显示屏幕的高度和宽度,通常只能在客户端这么做。 <?php if (isset($_GET['width']) AND isset($_GET['height'])) { // output the geometry variables echo "Screen width is: ". $_GET['width'] ."<br />\n"; echo "Screen height is: ". $_GET['height'] ."<br />\n"; } else { // pass the geometry variables // (preserve the original query string // -- post variables will need to handled differently) echo "<scrīpt language='javascrīpt'>\n"; echo " location.href=\"${_SERVER['scrīpt_NAME']}?${_SERVER['QUERY_STRING']}" . "&width=\" + screen.width + \"&height=\" + screen.height;\n"; echo "</scrīpt>\n"; exit(); } ?>
󰈣󰈤
 
 
 
>>返回首頁<<
 
 
 
 
 
 熱帖排行
 
 
王朝网络微信公众号
微信扫码关注本站公众号 wangchaonetcn
 
  免责声明:本文仅代表作者个人观点,与王朝网络无关。王朝网络登载此文出于传递更多信息之目的,并不意味著赞同其观点或证实其描述,其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有