0

我有一个难题,我们目前在我们的服务器上使用 PHP,我是一名 PHP 程序员。我已经建立了一个连接到我们的 PHP 站点的站点,该站点完全是客户端 HTML 5 和 Javascript。我可以将变量从 HTML 5 传递到 PHP,但我想将一些数据从 PHP 导入到 HTML 页面,例如 session ...等。如何将 PHP 会话传递给另一个页面上的 Javascript 或访问要在 HTML 5 和 Javascript 上使用的会话数据?

这样做的主要原因是带宽低的用户以及 HTML 5 能够在他们的线路断开时使用本地存储和离线功能,以便他们可以稍后将数据发布到 PHP 页面。

帮助会很大吗?

4

3 回答 3

0

如果您想在 PHP 中获取会话数据,您可以使用以下部分

<script>var $_SESSION = <?= json_encode($_SERVER) ?></script>

如果某些数据要在不同的页面上维护并且不需要服务器数据,最好使用 HTML5 的会话存储 [http://www.xul.fr/en/html5/sessionstorage.php]

这将减少服务器负载 + 数据传输并提高应用程序的速度

于 2012-09-12T09:02:39.393 回答
0

不完全支持 HTML5 本地存储,因此可以通过以下方式进行一些可以在任何地方工作的事情:首先将您的 PHP Session 放入 JS var:

 <script type="text/javascript">
         var sessionData= <?php echo json_encode($_SESSION); ?>
 </script>

然后,您将拥有sessionDataJSON 格式的可变会话数据。然后,如果您想在不同的地方使用它,那么只需通过 Javascript 将其设置并获取到 cookie 中。

请告诉我是否还有一些不清楚的地方。

于 2012-09-12T11:45:43.723 回答
0

我希望我在这里没有完全错,但是您实际上要做的是将数据从 php 写入 javascript。您可以按照 akluth 的建议使用 AJAX,但我认为在 javascript 中执行以下操作会更容易;

data = <?php echo $foo; ?>;

但是,在本地存储中保存会话时应该小心,因为它可以被客户端修改。一旦用户稍后尝试发布数据,可能会仔细检查。有关详细信息,请参阅此 SO answer 。

于 2012-09-12T08:49:38.560 回答