PHP - Ayuda Código que verifica que no exista registro en campo repetido

 
Vista:
Imágen de perfil de Eduardo
Val: 165
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Ayuda Código que verifica que no exista registro en campo repetido

Publicado por Eduardo (175 intervenciones) el 20/04/2018 21:44:38
Buenas tardes, tengo un formulario que contiene un script en Ajax el cual llama a un archivo php, el script Ajax lo que hace es dependiendo de la comprobación del archivo php hace que los campos del formulario se activen o desactiven y que salga una Alert donde dice que un dato esta repetido.

lo que hace el proyecto es no permitir que se repita un valor en este caso el campo nic

todo funciona perfecto es decir si agrego un nic ya agregado este me salta la alerta y me desactiva los campos del formulario hasta que ingrese uno que no exista. pero existe el problema siguiente...en la base de datos existen muchos datos nic vacíos o en blanco lo que hace que el sistema al dejar el campo del formulario en blanco o vació lo toma y lo compara con los datos nic vacíos en la base de datos.

he utilizado esto: (pero no me funciona:

1
$query = "select * from datos where nic =$nic AND nic !=''";

y esto tambien

1
select * from datos where nic =$nic AND !ISNULL(nic);

también he intentado en el condicional pero tampoco me resulta:

1
if ((mysql_num_rows(@$results) > 0) || ($nic!=''))

Como hago para que se ignore los campos nic vacíos el cual he intentado de todo pero aun así no me funciona. acá dejo parte del script php que hace las consultas. ya que de esta manera al dejar el campo nic vacío en el formulario este no lo compara con ello y así no saca la alerta. ( el campo nic es opcional ya que hay muchos registro que no lo poseen)

aca pongo el archivo php que llama el script..

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?php
 
//------------------------
define('DB_SERVER', 'localhost');
define('DB_SERVER_USERNAME', 'usersuserrr);
define('DB_SERVER_PASSWORD', '**************');
define('DB_DATABASE', 'BasedeDatos');

$conexion = mysql_connect(DB_SERVER, DB_SERVER_USERNAME, DB_SERVER_PASSWORD);
mysql_select_db(DB_DATABASE, $conexion);
//----------------------------
if($_REQUEST)
{
   $nic    = $_REQUEST['nic'];
   $query = "select * from datos where nic =$nic";
   $results = mysql_query($query) or die('ok');
   if(mysql_num_rows(@$results) > 0)  
   {
      echo '<div id="Error"></div>';
      echo "<script type=''>alert('Ya existe el Nic $nic en la Base de Datos');</script>";
         }
   else
   {
        echo "";
 
   }
 
}?>



espero me puedan ayudar.... muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Eduardo
Val: 165
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Ayuda Código que verifica que no exista registro en campo repetido

Publicado por Eduardo (175 intervenciones) el 20/04/2018 23:00:00
111
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Ayuda Código que verifica que no exista registro en campo repetido

Publicado por anonymous (24 intervenciones) el 21/04/2018 08:27:13
Proba así:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php
//------------------------
define('DB_SERVER', 'localhost');
define('DB_SERVER_USERNAME', 'usersuserrr');
define('DB_SERVER_PASSWORD', '**************');
define('DB_DATABASE', 'BasedeDatos');
 
$conexion = mysql_connect(DB_SERVER, DB_SERVER_USERNAME, DB_SERVER_PASSWORD);
mysql_select_db(DB_DATABASE, $conexion);
//----------------------------
if($_REQUEST)
{
   $nic = $_REQUEST['nic'];
   $query = "SELECT * FROM datos WHERE nic = '$nic'";
   $results = mysql_query($query) or die('ok');
   if(!empty($nic)){
   if(mysql_num_rows(@$results) > 0)
   {
      echo '<div id="Error"></div>';
      echo "<script type=''>alert('Ya existe el Nic $nic en la Base de Datos');</script>";
    }else{
      echo "";
   }
   }
}
?>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Eduardo
Val: 165
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Ayuda Código que verifica que no exista registro en campo repetido

Publicado por Eduardo (175 intervenciones) el 21/04/2018 17:12:49
siiiii syaf funcionoooo muchas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Ayuda Código que verifica que no exista registro en campo repetido

Publicado por anonymous (24 intervenciones) el 22/04/2018 10:36:47
De nada amigo, suerte con tu proyecto!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar