首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从PHP函数执行javascript函数

从PHP函数执行javascript函数
EN

Stack Overflow用户
提问于 2011-03-18 16:42:30
回答 4查看 1.4K关注 0票数 1

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

js-script.js

  • 包含javascript函数、->函数、doStuff(){ //do整}

index.php

head

  • contains
  • 中包含js文件->,用于检查DOCTYPE

之前包含的$_SESSION ->

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

  1. Best执行js脚本的方法如果是js脚本,如果js脚本是
    1. Best,则exist?
    2. Best停止js脚本

谢谢,

格雷格

EN

回答 4

Stack Overflow用户

发布于 2011-03-18 16:44:24

代码语言:javascript
运行
复制
<head>
  <? if (session_is_registered('foo')) echo '<script>doStuff();</script>'; ?>
  ...
</head>

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

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

Pseduo代码:

代码语言:javascript
运行
复制
if (ajax_response_from_session_verify() == still_logged_in){
  execute doSomething();
else
  stop doSomething();

但是,请记住,对会话检查文件的调用可能会延长会话时间,这取决于您是如何使用它的。(我不确定这是否理想)

票数 5
EN

Stack Overflow用户

发布于 2011-03-18 16:45:08

你有两个选择。

  1. 在单独的is文件中具有函数,并且只有在设置会话时才包含它。
  2. 将JS文件用作PHP。这将允许您在JS文件中运行PHP命令。只需确保您的内容类型是正常的。
票数 1
EN

Stack Overflow用户

发布于 2011-03-18 16:46:02

代码语言:javascript
运行
复制
if(session is OK) {
    $script = "doStuff();";
}

然后,在HTML中:

代码语言:javascript
运行
复制
<head>
...
<script type="text/javascript">
document.ready(function() {
<?php echo $script; ?>
});
</script>
...
</head>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5355127

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档