AJAX联系表格是否发送空参数?

问题描述

| 我想问的不是这个问题,但我真的需要另一只眼睛,因为这一定是我所缺少的愚蠢的东西。 我以前使用过相同的脚本,所以我不知道出了什么问题。 这是frnt的结束代码:http://jsfiddle.net/fU3Q3/1/ 后端PHP是:
<?PHP 
require(\"../db.PHP\");

// get the posted values
$email=$_POST[\'email\'];
$password=$_POST[\'password\'];

// Now validating the username and password
$sql=\"SELECT * FROM admin WHERE email=\'\".$email.\"\'\";
$result=MysqL_query($sql) or die (\"No such username exists!\");
$row=MysqL_fetch_array($result);

// if username exists
if(MysqL_num_rows($result)>0)
{
// compare the password
if(strcmp($row[\'password\'],$password)==0)
{
    echo \"yes\";
    // set the session from here
    $_SESSION[\'email\']=$email; 
}
else
    echo \"no\"; 
}
else
echo \"no\"; // invalid Login
?>
使用firebug,发送到ajax-login.PHP的URL似乎是“ 1”,其中结尾的位显然是随机数。 任何帮助深表感谢。 马丁     

解决方法

$.post(\"ajax-login.php\",{ email:$(\"input#email\").val(),password:$(\"input#password\").val
(),rand:Math.random() },function(data)
您有2个相同类型的ID,例如电子邮件的div ID,例如电子邮件的输入ID,您无法调用#email,因为它将在第一次出现时停止 为了进一步说明...没有关联类名的id被认为是唯一的,但是,如果您具有:
<div class=\'content\' id=\'email\'>
<input class=\'content\' id=\'email\'>
您可以使用以下示例在jquery中调用它们: 正式声明,键入>类名\'。\'> id \'#\'
$(\"div.content#email\");
$(\"input.content#email\");
如果没有匹配第一个标签,这将无法工作
$(\".content#email\");
$(\".content#email\");
    ,正如另一个人说的不要共享ID并尝试以下操作: 更换:
{ email:$(\"#email\").val(),password:$(\"#password\").val(),rand:Math.random() }
$(this).parents(\"form\").serialize()
http://jsfiddle.net/sjD9q/     ,您是密码,并且电子邮件输入与包含它们的父div共享一个ID,如果您更改div ID,则该表格应该可以使用。 注意:坏习惯是拥有多个同名的ID,因为这会破坏许多浏览器中的相关CSS和Javascript。