Si haces una consulta con mysql_query, esta
retorna TRUE en caso de éxito o FALSE en caso de error. Es lo primero que se ha de comprobar.
Si mysql_num_rows es mayor a 1 ó 0 es erróneo, primero porque habría más de un resultado asociado o, en su defecto, ninguno. O sea, distinto es que la consulta de error a que el número de filas recuperadas sea 0.
Para que lo entiendas más limpiamente:
1) Mysql_query retorna TRUE o FALSE si es erróneo o satisfactorio
2) Si mysql_queyr retorna TRUE, el "resource" puede tener 0 resultados, 1 o más 1.
3) Si el resource tiene 1 resultado todo bien, si tiene más de 1 ó 0, algo falla.
Para manejar AJAX es más sencillo que uses JQuery. En jQuery se hace así:
Código Javascript
:
Ver original$.ajax({
url:'script.php',
type: 'GET',
success: function(data, textStatus, xhr) {
/* en este punto data contiene la respuesta dada por el servidor (0 ó 1) */
comprobacionresultado(data);
}
});
Como data contiene la respuesta, ya es cosa de usar javascript (un if). Y asunto arreglado. Le pasas data como argumento si quisieras comprobarlo en otra función.
Código Javascript
:
Ver originalfunction comprobacionresultado(d){
if(d == 0){
alert("el usuario no existe");
} else if(d ==1){
alert("el usuario existe");
}
}