从Javascript函数调用PHP函数


Calling a PHP function from a Javascript Function

我有一个函数,它是在PHP页面的主体加载时调用的。

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

connTest()是一个php函数,它接受javascript变量并执行某些操作。这一切看起来都是错误的,但它在我的一个LAMP服务器上工作,在另一个服务器上完全崩溃(正如我所料)。

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

服务器的配置非常不同,所以这显然产生了巨大的差异,但我不明白它为什么/如何工作,所以我不知道如何在两台服务器上工作。

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

除非放弃线性时间的所有概念,否则调用connTest并传递Javascript变量sDataLoader的概念是没有意义的。

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

至于为什么这在另一台服务器上"有效",显而易见的答案是它没有。可能只是碰巧有一个名为sDataLoader的服务器端变量,它做了一些可能与工作混淆的事情。