从Javascript函数调用PHP函数

时间:2012-08-30 18:34:02

标签: php javascript

我有一个在PHP页面上调用body load的函数。

<script>
    function testConnection()
    {
        var sDataLoader = readCookie('DataLoader');
        <?php connTest(sDataLoader); ?>     
    }
</script>

connTest()是一个PHP函数,它接受javascript变量并执行某些操作。关于这一切的一切看起来都不对,但它可以在我的一台LAMP服务器上运行,并且完全爆炸(就像我期望的那样)在另一台服务器上。

  

未知错误类型:[8]使用未定义的常量sDataLoader-假设'sDataloader'

服务器的配置非常不同,显然会产生巨大的差异,但我只是不明白为什么/如何工作,所以我无法弄清楚如何让它在两台服务器上都能正常工作。

1 个答案:

答案 0 :(得分:5)

当在客户端上执行<script>标记时,代码的PHP部分(在服务器上运行)完全完成。鳍!已经失去记忆,永远不会被再次看到或听到!

调用connTest并传入Javascript变量sDataLoader这一概念毫无意义,除非您放弃所有线性时间概念。

如果要在服务器上执行更多代码,则需要发出 HTTP请求并发送相关数据。有很多方法可以做到这一点,包括AJAX,IFrame,回发等等。

至于为什么这个“工作”在另一台服务器上,显而易见的答案是它没有。有可能恰好是一个名为sDataLoader的服务器端变量,它可能会与工作混淆。