document.ready
URL行に「temp」というパラメーターがあるかどうかをチェックするカスタムWebサイトがあります。その場合、値をデータベースに保存するサーバーで PHP 関数を呼び出します。今私にとって奇妙なことは、手動でこれを入力すると:
http://mywebsite.org/?temp=7
私のブラウザでは、すべて正常に動作します。しかし、この Web サイトを使用して GET をテストすると、次のようになります。
私のウェブサイトは何もしません。
これは、パラメーターの存在をチェックする私の jQuery コードです。
$(document).ready(function() {
var data = gup('temp', location.href);
if (data != undefined) {
$.ajax({
data: {
action: 'insertTemp',
value: data
},
type: "GET",
url: "SQL.php",
success: function(data) {
//alert("Data Saved " + data);
},
error: function(xhr) {
alert(xhr.responseText);
}
});
}
document.ready
自動化された HTML リクエストでチェックされないため、問題になる可能性があると思いますか?
編集:
Gup はインターネットからコピーした関数で、URL のパラメーターをフィルター処理するだけです。
function gup(name, url) {
if (!url) url = window.location.href;
name = name.replace(/[\[\]]/g, "\\$&");
var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)", "i"),
results = regex.exec(url);
if (!results) return null;
if (!results[2]) return '';
return decodeURIComponent(results[2].replace(/\+/g, " "));
}
document.ready()
節の外で宣言されています。
これは私が得る応答コードですrequestmaker.com
: