私はしばらくこれで髪を引き裂いています。
index.php:
$(document).ready(function(){
$(".index_login_subm").click(function(){
uid = $("input:username").val();
pwd = $("input:password").val();
$.post("backend/login.php",{
uid:uid,
pwd:pwd
},function(data){
alert("Returned data: " + data);
});
return false;
});
});
login.php:
include("../../settings.php");
echo $uid;
echo $_POST['uid'];
どのエコーも何も返しません。
settings.php:
foreach ($_POST as $key => $value) {
$$key = mysql_real_escape_string($value);
}
foreach ($_GET as $key => $value) {
$$key = mysql_real_escape_string($value);
}
settings.php-include をコメントアウトすると、コードはうまく機能します (もちろん、echo $uid は機能しません)。誰が私が間違っているのか知っていますか?
index.php には、違いがある場合は settings.php も含まれています。
編集: 以下の投稿で、明確にしたいと思いました。パスはすべて正しいです。settings.php (およびその他のスクリプト) はすべてルート フォルダーの外に配置され、Web ユーザーがアクセスできないようにします。スクリプトからアクセスすると、それらはうまく機能しています。