javascript代码:
$.getJSON("comprueba_login.php", {usuario:$("#usuario").val(), pwd:$("#contrasena").val()}, function(data){
alert("resultado: " + data.resultado);
});
php代码:
<?php
include 'db.php';
$usuario = $_GET['usuario'];
$pwd = $_GET['pwd'];
$sql = "SELECT IDUSUARIO FROM USUARIOS WHERE USERUSUARIO = '" . $usuario . "' AND PWUSUARIO = '" . $pwd . "'";
$res = mysql_query($sql, $db) or die("fallo query: " . mysql_error());
// echo $sql . "<br>";
if(mysql_num_rows($res)){?>
{'resultado':'OK'}
<?php }else{ ?>
{'resultado':'NO_OK'}
<?php }?>
javascript代码中的警报永远不会出现。我做错了什么?
提前致谢。
答案 0 :(得分:2)
JSON键和字符串值必须用"
双引号括起来。单引号('
)将无效。
答案 1 :(得分:2)
首先也是最重要的是,不要将数据库凭据放在网页中。
getJSON的无提示失败通常表示JSON字符串中存在语法错误。
$.getJSON("comprueba_login.php", {usuario:$("#usuario").val(), pwd:$("#contrasena").val()}, function(data){
alert("resultado: " + data.resultado);
}).error(function() { alert("Error in getJSON") });
将证实这一点。
我相信你正在尝试做的正确语法是:
if(mysql_num_rows($res)){?>
{ resultado :"OK"}
<?php }else{ ?>
{ resultado : "NO_OK"}
<?php }?>
但如果你要广泛使用JSON,你应该考虑使用一个包来为你创建它。