-5

PHPページのボディロード時に呼び出される関数があります。

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

connTest()は、javascript変数を受け取り、何かを実行するphp関数です。これに関するすべてが間違っているように見えますが、それは私のLAMPサーバーの1つで動作し、別のサーバーでは完全に爆発します(私が期待するように)。

不明なエラータイプ:[8]未定義の定数sDataLoaderの使用-想定される「sDataloader」

サーバーの構成が大きく異なるため、明らかに大きな違いがありますが、なぜ/どのように機能するのかわからないため、両方のサーバーで機能させる方法がわかりません。

4

1 に答える 1

4

タグがクライアントで実行されるまで<script>に、コードのPHP部分(サーバーで実行された)は完全に終了します。フィン!記憶から消えて、二度と見られたり聞かれたりすることはありません!

線形時間のすべての概念を放棄しない限り、Javascript変数を呼び出しconnTestて渡すという概念自体は意味がありません。sDataLoader

サーバーでさらにコードを実行する場合は、新しいHTTPリクエストを作成し、関連するデータを送信する必要があります。これを行うには、AJAX、IFrame、ポストバックなど、さまざまな方法があります。

これが別のサーバーで「機能した」理由については、明らかな答えはそうではなかったということです。作業sDataLoaderと混同される可能性のある何かを実行するというサーバー側の変数がたまたまあった可能性があります。

于 2012-08-30T18:40:44.697 に答える