php - 从 PHP 函数执行 javascript 函数

标签 php javascript jquery session

如果存在 PHP session ,我正在尝试找到执行 javascript 函数的最佳和更简洁的方法。

js-script.js

  • 包含 javascript 函数 -> function doStuff(){//do stuff }

index.php

  • 包含 js 文件 -> 在头部
  • 包含检查 $_SESSION 的 PHP 类 -> 包含在 DOCTYPE 之前

请让我知道想法(我正在使用 PHP、javascript、jQuery)。

  1. 如果 $_SESSION 存在,执行 js 脚本的最佳方式?
  2. 如果 $_SESSION 被破坏,停止 js 脚本的最佳方法?

谢谢,

格雷格

最佳答案

<head>
  <? if (session_is_registered('foo')) echo '<script>doStuff();</script>'; ?>
  ...
</head>

不能跨越服务器/客户端边界,所以最好的情况是在页面上转储一些东西,使客户端排队以触发 javascript 函数。

或者,您可以在 AJAX 调用中引用类似 session_verify.php 的内容,然后根据收到的响应“继续执行”/“停止”。

伪代码:

if (ajax_response_from_session_verify() == still_logged_in){
  execute doSomething();
else
  stop doSomething();

不过请记住,调用 session 检查文件可能会延长 session 时间,具体取决于您的使用方式。 (我不确定这是否需要)

关于php - 从 PHP 函数执行 javascript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5355127/

相关文章:

php - 覆盖 Laravel Controller 中的特征方法

php - ADYEN 支付 - 测试 SoapFault 对象时出现 SOAP 错误([消息 :protected] => security 010 Not allowed

javascript - 如何将函数转换为 .prototype?

javascript - phonegap + ionic 使用 Content-Security-Policy 加载 maps.googleapis.com,如何?

javascript - Wordpress自定义图库设置-条件显示

javascript - 使用 jQuery 选择评论中包含的元素

javascript - jQuery/Ajax 在警报中正确发送 "data-"值,但无法将其附加到 php 中的特定 div 中

php - 从命令行在我的网站上运行 .php 脚本

javascript - 在 shopify 搜索栏中删除冒号搜索运算符

javascript - Express.js 中未定义 req.session