0

重複の可能性:
フォーム ボタンから PHP 関数を呼び出す方法

次のようなボタンがあります。

<form method="post" id="submit" action="script/gen.php">
    <input type="button" onClick="getKey()" value="Generate key"/>

これは、次のような同じファイル内の JavaScript を呼び出します。

<script type="text/javascript">
        function getKey() {
            if (window.XMLHttpRequest) {
                xmlhttp=new XMLHttpRequest();

        }
        else {
            xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
        }

        xmlhttp.onreadystatechange=function() {
        if (xmlhttp.readyState==4 && xmlhttp.status==200) {
            document.getElementById("innhold").innerHTML=xmlhttp.responseText;
        }
    }
        xmlhttp.open("GET","script/gen.php?returnKey",true);
        xmlhttp.send();
    }
</script>

スクリプト内にいくつかの場所を追加することで、この JavaScript が呼び出されていることがわかりalert()ます。isset問題は、php コードで実行しようとすると発生します。

else if(isset($_GET['returnKey'])) {
returnKey();
}

echo関数呼び出しを行う前にa を追加しても、この関数は決して呼び出されませんreturnKey()

誰が問題がどこにあるかを見ることができますか?

編集

これは、クロムから、コンソールが私に伝えなければならないことです:

XMLHttpRequest cannot load file:///C:/wamp/www/Webpanel/script/gen.php?returnKey. Cross    origin requests are only supported for HTTP.
Uncaught Error: NETWORK_ERR: XMLHttpRequest Exception 101 index.html:37
getKey index.html:3

編集2

聖なるモーセ、私はそれを理解しました。ブラウザに localhost/Webpanel と入力する必要がありました。長い一日だったので、よくわかりません..

4

1 に答える 1

1

問題を解決しました:

私は自分のローカルを開こうとしましたindex.html、これはそれをする正しい方法です、ofc。localhostブラウザに入力します。を実行する必要がありますWAMP

于 2012-07-17T11:48:37.437 に答える