Foros del Web » Programando para Internet » PHP »

Error para saber si un usuario existe o no

Estas en el tema de Error para saber si un usuario existe o no en el foro de PHP en Foros del Web. Hola a todos, quisiera validar el mail que no este duplicado y siempre el error 1... dejo código PHP: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código PHP: Ver original ...
  #1 (permalink)  
Antiguo 14/03/2020, 14:27
Avatar de fedefrankk  
Fecha de Ingreso: agosto-2007
Mensajes: 835
Antigüedad: 12 años, 7 meses
Puntos: 7
Pregunta Error para saber si un usuario existe o no

Hola a todos, quisiera validar el mail que no este duplicado y siempre el error 1...

dejo código PHP:


Código PHP:
Ver original
  1. //$user_nombre= mysqli_real_escape_string($cone,$_POST["user_nombre"]);
  2.  $user_mail_nuevo= mysqli_real_escape_string($cone,$_POST["user_mail_nuevo"]);
  3.  
  4.  
  5.  
  6.  $sql ="SELECT * FROM cl_usuarios WHERE user_mail='$user_mail_nuevo'";
  7.  
  8.  $result =mysqli_query($cone,$sql);
  9.  $num_row = mysqli_num_rows($result);
  10.  if ($num_row=="1"){
  11.  
  12.      $datos=mysqli_fetch_array($result);
  13.       $_SESSION["user_mail"]= $datos["user_mail"];
  14.     //  $_SESSION["user_name"]= $datos["user_name"];
  15.      // $_SESSION["user_estado"]= $datos["user_estado"];
  16.      
  17.  
  18.   //    echo $datos["user_estado"];
  19.   echo $datos="1"; //error 1
  20.  
  21.  
  22.  }else{
  23.    
  24.     echo $datos="2";//error 2
  25.  
  26.  }

no se que estoy haciendo mal pero nunca el while entra al 1

ya he comprobado los campos de la base de datos. todo esta bien

gracias por su tiempo, saludos,!!!
  #2 (permalink)  
Antiguo 14/03/2020, 22:31
Avatar de petit89  
Fecha de Ingreso: marzo-2011
Mensajes: 1.048
Antigüedad: 9 años
Puntos: 153
Respuesta: Error para saber si un usuario existe o no

para comenzar no tiene que ver esto:
Código PHP:
Ver original
  1. $datos=mysqli_fetch_array($result);
  2.       $_SESSION["user_mail"]= $datos["user_mail"];

mejor definelo de $user_mail_nuevo, ya que viene el mismo dato supongo, no?

despues, creo que aqui hay error... ya que la funcion te devuelve un dato numerico, y al poner comillas estas comparando un dato string... quitalas

if ($num_row == 1)

Cita:
no se que estoy haciendo mal pero nunca el while entra al 1
cual while?
__________________
█ WebHosting / Reseller a bajo costo | Uptime Garantizado | Soporte en Español e Ingles
¿Te sirvió la respuesta? Deja un +1 (Triangulo negro al lado derecho)
  #3 (permalink)  
Antiguo 15/03/2020, 12:16
Avatar de fedefrankk  
Fecha de Ingreso: agosto-2007
Mensajes: 835
Antigüedad: 12 años, 7 meses
Puntos: 7
Pregunta Respuesta: Error para saber si un usuario existe o no

Hola Gracias por tu repuesta, si le quito las comillas al 1, me da error, lo el while, se me confundí con otro código que recorre todo para saber si existe o no un usuario duplicado...

el codigo viene de ajax, y no se porque no entra en los else


CODIGO AJAX
Código Javascript:
Ver original
  1. $('#ingre').click(function(){
  2.  
  3. var user_nombre = $('#user_nombre').val();
  4. var user_mail_nuevo = $('#user_mail_nuevo').val();
  5.  
  6.  
  7.  
  8. if ($.trim(user_nombre).length > 0 && $.trim(user_mail_nuevo).length > 0){
  9.   $.ajax({
  10.  
  11.         url:"nuevo_usuario.php",
  12.         method:"POST",
  13.         data:{user_nombre:user_nombre, user_mail_nuevo:user_mail_nuevo},
  14.         cache:"false",
  15.         beforeSend:function(){
  16.             $('#ingre').val("Conectando.....");
  17.           console.log (user_nombre);
  18.            console.log (user_mail_nuevo);
  19.            console.log ('FEDE');
  20.  
  21.         },
  22.  
  23.         success:function(datos){
  24.           $('#ingre').val("Login");
  25.           if (datos == "1"){
  26.             console.log (datos)
  27.             //$("#resultato").html("<div class='alert alert-dismissible alert-danger'><button type='button' class='close' data-dismiss='alert'>&times;</button><strong>Errror</strong> las credenciales son incorrectas.</div>");
  28.           }else if(datos == "2"){
  29.             console.log (datos)
  30.            // location.href = "../index.php";
  31.           }else{
  32.             console.log (datos)
  33.            // $("#resultato").html("<div class='alert alert-dismissible alert-danger'><button type='button' class='close' data-dismiss='alert'>&times;</button><strong>Errror</strong> las credenciales son incorrectas.</div>");
  34.           }
  35.          
  36.           }
  37.   });
  38.  
  39. };


codigo php sin comillas

Código PHP:
Ver original
  1. $user_mail_nuevo= mysqli_real_escape_string($cone,$_POST["user_mail_nuevo"]);
  2.  
  3.  
  4.  
  5.  $sql ="SELECT * FROM cl_usuarios WHERE user_mail='$user_mail_nuevo'";
  6.  
  7.  $result =mysqli_query($cone,$sql);
  8.  $num_row = mysqli_num_rows($result);
  9.  if ($num_row==1){
  10.  
  11.      $datos=mysqli_fetch_array($result);
  12.    $_SESSION["user_mail"]=$datos["user_mail"];
  13.     //  $_SESSION["user_name"]= $datos["user_name"];
  14.      // $_SESSION["user_estado"]= $datos["user_estado"];
  15.      //    echo $datos["user_estado"];
  16.   echo $datos=1;
  17.  
  18.  
  19.  }else{
  20.  
  21.     echo $datos=2;
  22.  
  23.  }


uso visual estudio code, y me marca todo con error a sacarles las comillas... sabras porque?
muchas gracias por tu tiempo,

Saludos cordiales
Fede
  #4 (permalink)  
Antiguo 16/03/2020, 00:06
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.032
Antigüedad: 11 años, 7 meses
Puntos: 2206
Respuesta: Error para saber si un usuario existe o no

Resulta que con echo $datos=1; (con comillas o sin comillas), lo que se va a mostrar es el resultado de la asignación, valor 1 a la variable $datos y como siempre resulta exitosa, mostrará 1, porque es la forma en que representa verdadero (falso con cero).

Entonces, parece que lo que necesitas es: echo "datos = 1";, o simplemente echo 1; y echo 2; en el caso del else, no estoy del todo seguro porque no he analizado bien el javascript.
__________________
- León, Guanajuato
- GV-Foto
  #5 (permalink)  
Antiguo 17/03/2020, 15:55
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.032
Antigüedad: 11 años, 7 meses
Puntos: 2206
Respuesta: Error para saber si un usuario existe o no

Tema cerrado, respondido en Javascript: http://www.forosdelweb.com/f13/direc...uario-1163870/

Por favor evita duplicar temas.
__________________
- León, Guanajuato
- GV-Foto



La zona horaria es GMT -6. Ahora son las 09:48.