Ben bir süre için bu bir saçımı yırtılma olmuştur.
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'];
yankıları hiçbiri bir şey verir.
settings.php:
foreach ($_POST as $key => $value) {
$$key = mysql_real_escape_string($value);
}
foreach ($_GET as $key => $value) {
$$key = mysql_real_escape_string($value);
}
I mysql_real_escape_string yapar (iyi, tabii ki echo $ uid çalışmaz) üzerinden settings.php-içerirler, bu nedenle olmalı şey yorum eğer kod iyi çalışıyor. Herkes ben yanlış yapıyorum ne bir fikrin var mı?
Herhangi bir fark yaparsa index.php de settings.php içerir.
EDIT: Aşağıda Mesajlar beni açıklığa kavuşturmak istiyorum yaptı; yolları hepsi doğru. settings.php (ve diğer bazı komut dosyaları) bütün bir web kullanıcı onları erişilmez hale getirmek için kök klasörü dışında konur. Komut erişildiğinde Onlar iyi çalışıyoruz.