Ver Mensaje Individual
  #1 (permalink)  
Antiguo 26/02/2010, 21:02
Avatar de Carlmycol
Carlmycol
 
Fecha de Ingreso: diciembre-2007
Ubicación: Los Teques, Venezuela
Mensajes: 240
Antigüedad: 16 años, 11 meses
Puntos: 3
Comprobar si un registro existe?

Bueno estoy haciendo un code en php, que ingrese un nombre y un correo, verifico que estos sean correctos, y hasta ahy todo bien, pero si estos estan verificados, quiero saber si ya existen en la tabla pero no entiendo porque no me funciona

Se que verificar es buscando en una tabla coincidencias y si existen bueno.. Pero no entiendo porque cuando introdusco datos que ya estan en la db sigue normal,.. si alguien me puede ayudar con esto

Código PHP:
Ver original
  1. <?
  2.  
  3. function conectar()
  4. {
  5.     $host="localhost";
  6.     $user="root";
  7.     $password="password";
  8.     $db='alex';
  9.     $conexion=@mysql_connect($host, $user, $password);
  10.     if (!$conexion) {
  11.         printf("Error al Conectar con la Base de Datos");
  12.         exit();
  13.     }
  14.    
  15.     mysql_select_db($db, $conexion);
  16.    
  17.     return $conexion;
  18. }
  19.  
  20. function validar_email($direccion)
  21. {
  22.    
  23.     if (!(preg_match('/^[^0-9][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[@][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[.][a-zA-Z]{2,4}$/', $direccion)))
  24.     {
  25.         return 1; // si no lo cumple retorna error..
  26.     } else {
  27.         return 0;
  28.     }
  29.    
  30. }
  31.  
  32. function validar_nombre($palabra)
  33. {
  34.     if(preg_match('/^[a-z0-9_]{5,50}$/i', $palabra))
  35.     {
  36.         return 0;
  37.     } else {
  38.         return 1;
  39.     }
  40. }
  41.  
  42. $form = '<form name="form" action="formulario.php" method="post" >
  43.     <p>Nombre:
  44.     <input type="text" name="nombre" /></p>
  45.  
  46.     <p>Email: <input type="text" name="email" /></p>
  47.     <input type="submit" name="enviar" value="Crear!"/>
  48.     </form>';
  49.  
  50. if (isset($_POST['enviar']))
  51. {  
  52.     // si se envio entonces..................
  53.     $error=0;
  54.     $email=$_POST['email'];
  55.     $nombre=$_POST['nombre'];
  56.    
  57.     $nombre=strtolower($nombre);
  58.     $email=strtolower($email);
  59.    
  60.     if (validar_email($email)==1)
  61.     {
  62.         $error=1; //si hubo error!!
  63.         $errorlevel.='<br />Introduce un Email Valido!';
  64.        
  65.     }
  66.    
  67.     if (validar_nombre($nombre)==1) {
  68.         $error=1;
  69.         $errorlevel.='<br />Solo se permiten numeros y/o letras en el nombre!';
  70.    
  71.     }
  72.    
  73.     if($error==1) {
  74.         echo 'Hubo un Error en los datos que se han introducido!';
  75.         echo $errorlevel;
  76.         echo $form;
  77. } else {
  78.    
  79.     // si ninguno de los datos introducidos es invalido
  80.     $doble=0;
  81.     $link=conectar();
  82.    
  83.     // verificar si alguno ya existe!...
  84.    
  85.     $consulta="SELECT * FROM usuarios WHERE nombre='.$nombre'";
  86.     $result=mysql_query($consulta, $link);
  87.     if (mysql_num_rows($result)>0)
  88.     {
  89.         $doble=1;
  90.         $errorlevel='<br />El nombre ya esta en uso!';
  91.     }
  92.    
  93.  
  94.     $consulta="SELECT * FROM usuarios WHERE email='.$email'";
  95.     $result=mysql_query($consulta, $link);
  96.     if (mysql_num_rows($result)>0)
  97.     {
  98.         $doble=1;
  99.         $errorlevel='<br />El email ya esta en uso!';
  100.     }
  101.    
  102.    
  103.    
  104.     if ($doble==1)
  105.     {
  106.         echo 'Hubo un Error en los datos que se han introducido!';
  107.         echo $errorlevel;
  108.         echo $form;
  109.     }
  110.    
  111.    
  112.    
  113.    
  114.     }
  115.    
  116. // SI no se envio!!!!!!!!!
  117.    
  118.     } else {
  119.    
  120.     echo $form;
  121.    
  122.     }
  123.  
  124.  
  125.  
  126. ?>

Gracias de antemano