重複の可能性:
フォーム ボタンから 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 と入力する必要がありました。長い一日だったので、よくわかりません..