PHP不返回响应


PHP won't return a response

这可能是一些非常基本的东西,但我已经做了一段时间,它没有跳出来,我想我累了…请帮助。

我试图创建一个简单的登录html页面,阅读它使用jquery/ajax和php验证它。这是javascript/jquery和php的两部分。虽然firebug似乎正确地报告"message"正在设置,但没有任何响应返回…我做错了什么?如果php报告了错误,我该去哪里找呢?


login.js

$(document).ready(function(){  
    $('#loginForm').submit(function(){  
        var usern=$('#username').val();  
        var pword=$('#password').val();  
       $.ajax({  
            url: 'mylogin.php',  
            data: 'action=login&usern='+usern+'&pword='+pword,  
            dataType: 'json',  
            type: 'post',  
            success: function (j) {  
                $('#loginmessage').html(j.msg);  
            },  
       });  
    });  
});`    

mylogin.php

<?php   
    $username=$_POST['username'];  
    $password=$_POST['password'];  
    $retval['msg']="in mylogin.php";  
    fb($retval,"return output from login");  
    echo json_encode($retval);  
?>

这很简单,你将用户名发布为usern,密码发布为pword

所以应该是

<?php   
    $username=$_POST['usern'];  
    $password=$_POST['pword'];  

您正在使用名称usernpword设置post变量,然后尝试使用usernamepassword访问它们

当你在jquery post中传递变量名作为usern和pword时,你正在使用用户名和密码作为PHP代码中的post变量名

应该看起来像

<?php   
    $username=$_POST['usern'];  
    $password=$_POST['pword'];
?>

在传递变量时使用标准的命名约定是很重要的,这将有助于减少这些问题发生的机会。