私はajax呼び出しでlogin.phpをやっています...私のajaxビットコードとlogin.phpコードです..有効なユーザー名とパスワードも与えています..無効になっていますユーザー名やパスワードのmessage..amは完全にコードlogin.phpへのajaxコールの応答が失敗しました
$is_ajax = $_REQUEST['is_ajax'];
if(isset($is_ajax) && $is_ajax) // in login.php, Many thanks
$("#login").click(function() {
var action = $("#form1").attr('action');
var form_data = {
username: $("#username").val(),
password: $("#password").val(),
is_ajax: 1
};
$.ajax({
type: "POST",
url: login.php,
data: form_data,
success: function(response)
{
if(response == 'success')
$("#form1").slideUp('slow', function() {
$("#message").html("<p class='success'>You have logged in successfully!</p>");
});
else
$("#message").html("<p class='error'>Invalid username and/or password.</p>");
}
});
return false;
});
のこれらの行を理解できなかったし、これは、login.phpのコードです。あなたが$_REQUEST
を使用しているため
<?PHP
if(isset($_REQUEST['is_ajax']) && $_REQUEST['is_ajax']) {
$is_ajax = $_REQUEST['is_ajax'];
$uname = $_POST['username'];
$pword = $_POST['password'];
$uname = htmlspecialchars($uname);
$pword = htmlspecialchars($pword);
$user_name = "root";
$pass_word = "root";
$database = "test";
$server = "127.0.0.1";
$username = $_REQUEST['username'];
$password = $_REQUEST['password'];
$db_handle = mysql_connect($server, $user_name, $pass_word);
$db_found = mysql_select_db($database, $db_handle);
$uname = quote_smart($uname, $db_handle);
$pword = quote_smart($pword, $db_handle);
$SQL = "SELECT * FROM login WHERE L1 = $uname AND L2 = md5($pword)";
$result = mysql_query($SQL);
$num_rows = mysql_num_rows($result);
if ($num_rows > 0) {
echo "success";
}
mysql_close($db_handle);
}
?>
なぜ 'url'パラメータではありません引用符で囲まれた文字列?今は 'login'という名前のオブジェクトの' php'プロパティです。これはおそらくあなたが望むものではありません。 – apsillers
Sir..iは成功メッセージを受け取っていないのに( 'login.php')コードを入れました.. – user1160126
私の前に誰かが、 '$ uname'と' $ pword'の固定(既知の)文字列を'$ _POST'から引っ張るのではなく、PHPファイルです。あなたがそれをすれば成功のメッセージを受け取るのですか? – apsillers